我正在使用Slim框架为我的应用程序构建api。我无法连接到Google Cloud SQL。
我在下面提供了错误消息。
我一直在codeigniter中使用它,没有任何问题。有人可以帮助我了解如何解决此问题。
数据库代码:
function getDB() { $dbhost=":/cloudsql/projid:instancename"; $dbuser="root"; $dbpass=""; $dbname="dbname"; $dbConnection = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass); $dbConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); return $dbConnection; }
错误信息
{"error":{"text":SQLSTATE[HY000] [2002] php_network_getaddresses: gethostbyname failed. errno=0}}
PS我在Localhost上没有遇到这个问题。
您的PDO
连接字符串应使用mysql:unix_socket
而不是mysql:host
。
https://cloud.google.com/appengine/docs/php/cloud-sql/
PDO_MySQL
$db = new pdo('mysql:unix_socket=/cloudsql/: ;dbname= ', 'root', // username '' // password );