使用PHP连接到App Engine中的本地MySQL

时间:2013-05-27 15:26:05

标签: php mysql google-app-engine

我正在测试新的App Engine PHP SDK(开发环境),并且在连接到我的本地MySQL时遇到问题。

我使用必要的参数启动dev_appserver.py,告诉我我的MySQL在哪里( - mysql_host = localhost --mysql_port = 3306 --mysql_user = admin --mysql_password = password但是仍然无法使用来自PHP脚本的mysqli_connect命令。

在某处我读到了这些命令,即使连接到cloudSQL也应该被路由......

有什么建议可以看下一步吗?

2 个答案:

答案 0 :(得分:2)

您的开发服务器可能正在查找套接字文件的错误位置。寻找文件mysql.sock

常见的地方是:

/Applications/MAMP/tmp/mysql/mysql.sock
or /tmp/mysql.sock
or /var/mysql/mysql.sock

如果您不想移动任何东西或只是直接连接到套接字,请设置符号链接:

$con = mysql_connect(':/Applications/MAMP/tmp/mysql/mysql.sock', 'root', '1234');

答案 1 :(得分:1)

如果您在开发环境中测试它,那么您现在可以简单地忽略cloudSQL路由。

我相信您需要执行以下操作验证您是否可以连接简单的MySQL连接功能,然后确保已安装MySQLi(因为在未包含的Google App Engine的Web安装步骤中)

$link = mysql_connect('localhost', 'admin', 'password');
if(!$link) {
    die('Could not connect: ' . mysql_error());
}else{
   mysql_close($link);
   echo 'Connected successfully and everything seems fine .... Checking MySQLi Installation<br><br>';
   if(function_exists('mysqli_connect')) {
     echo 'MySQLi is Installed :S';
   }else{
     echo 'Oops. You need to reconfigure Your PHP Installation to Include MySQLi';
   }
}

如果您收到如下回复:

连接成功,一切似乎都很好......检查MySQLi安装

糟糕。您需要重新配置PHP安装以包含MySQLi

然后您可能需要重新运行配置才能启用MySQLi&amp; PDO驱动程序

./configure --prefix=$PWD/installdir --enable-bcmath --with-mysql --with-pdo-mysql --with-mysqli