我正在使用Zend框架和Doctrine,我正在从localhost转移到我的服务器,但我收到了这个错误。一切都运作良好localy。
Warning: PDO::__construct() [pdo.--construct]: [2002] No such file or directory
(trying to connect via unix:///tmp/mysql.sock) in /www/webvol19/94/yi8ghefpta7q527/
mywebsite.com/vendor/doctrine/Doctrine/DBAL/Driver/PDOConnection.php on line 36
我的连接设置如下:
// pdo connection definition
'db' => array(
'driver' => 'Pdo',
'dsn' => 'mysql:dbname=dbname123;host=mysql410.ddd.com',
'username' => 'user',
'password' => 'pass121512',
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
),
),
// doctrine connection definition
'doctrine_config' => array (
'proxy_directory' => APP_PATH
. DIRECTORY_SEPARATOR
. 'data'
. DIRECTORY_SEPARATOR
. 'Doctrineproxy',
'proxy_namespace' => 'Doctrineproxy',
'doctrine_db_conn_params' => array (
'driver' => 'pdo_mysql',
'user' => 'user',
'password' => 'pass121512',
'dbname' => 'dbname123',
),
'is_dev_mode' => true,
),
我不确定在我的网站名称之前是什么
/www/webvol19/94/yi8ghefpta7q527/
答案 0 :(得分:1)
您说您从localhost转移到服务器但应用程序仍然连接到localhost。
Doctrine配置包含自己的数据库参数,独立于外部预定义的数据库配置。在您的情况下,您必须指向'doctrine_config'
内的主机和(可选)端口:
'doctrine_config' => array (
...
'doctrine_db_conn_params' => array (
'driver' => 'pdo_mysql',
'user' => 'user',
'password' => 'pass121512',
'dbname' => 'dbname123',
/* add this */
'host' => 'mysql410.ddd.com',
//'port' => 3306
),
...
),