谷歌应用引擎云SQL连接问题



当尝试连接到Google Cloud SQL时,我收到以下错误:

Connection error
Unable to find the socket transport "unix" - did you forget to enable it when you configured PHP?

我已经试着解决这个问题好几个小时了,但还是一无所获。

我的配置如下(在ZF2Configlocal.php中):

return array(
    'db' => array(
        'driver' => 'Mysqli',
        'host' => '',
        'database' => 'ar_captab',
        'username' => 'root',
        'password' => '',
        'driver_options'  => [
            'unix_socket' => ':/cloudsql/some-app-v1-test:some-db'
        ]
    ),
);

我还将我的谷歌应用程序引擎应用程序的应用程序ID添加到云SQL中的访问控制列表(授权应用程序引擎的应用程序)中。

当我尝试运行这个:

$config = $this->getServiceLocator()->get('config');
$adapter = new ZendDbAdapterAdapter($config['db']);
$sql = new ZendDbSqlSql($adapter);
$select = $sql->select();
$select->from('example');
$select->where('1');
$statement = $sql->prepareStatementForSqlObject($select);
$results = $statement->execute();

我得到unix套接字错误。我缺少什么?

终于想通了。我是因为结肠。Mysqli连接不需要它,只需要PDO连接类型。

因此,正确的配置是:

return array(
    'db' => array(
        'driver' => 'Mysqli',
        'host' => '',
        'database' => 'some-database',
        'username' => 'root',
        'password' => '',
        'driver_options'  => [
            'unix_socket' => '/cloudsql/some-app-v1-test:some-db'
        ]
    ),
);

相关内容

  • 没有找到相关文章

最新更新