【发布时间】:2011-04-07 15:12:48
【问题描述】:
我正在尝试连接到另一台机器:
$this->_connection = new PDO("mysql: host=MYSQL_SERVER; dbname=MYSQL_DATABASE",MYSQL_USER, MYSQL_PASSWORD, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
但是 PDO 倒闭:
SQLSTATE[HY000] [2002] 无法通过socket '/var/lib/mysql/mysql.sock' 连接到本地MySQL服务器(2)
令人生气的是,这在我的开发服务器上的 localhost 上运行良好 - 我们的生产设置是一个带有单独数据库服务器的 LVS,但我似乎无法让 PDO 连接到它!
我在哪里,哦,我在哪里搞砸了什么?
编辑:
这行得通:
mysql_connect(MYSQL_SERVER, MYSQL_USER, MYSQL_PASSWORD) or die(mysql_error());
mysql_select_db(MYSQL_DATABASE) or die(mysql_error());;
echo 'Connected to database <br/>';
注意:MYSQL_SERVER 不是 localhost,它是我们数据库主服务器的 IP。在托管开发数据库的开发服务器上,PDO 可以完美运行。
【问题讨论】: