2013-05-27 32 views
1

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

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

某处,我读了,这些命令,甚至CLOUDSQL的连接应改为...

任何建议要找什么下次?

回答

1

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

我相信你需要做以下检查,你可以用简单的MySQL连接连接功能,然后请确保安装的MySQLi(因为在未包括谷歌应用程序引擎的网络安装步骤)

$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 & PDO驱动

./configure --prefix=$PWD/installdir --enable-bcmath --with-mysql --with-pdo-mysql --with-mysqli 
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'); 
相关问题