无法从google app engine flexible environment PHP项目连接到云sql实例
我正试图在GoogleAppEngineFlexible环境上部署一个测试php项目 我的app.yaml如下所示:无法从google app engine flexible environment PHP项目连接到云sql实例,php,google-app-engine,google-cloud-sql,Php,Google App Engine,Google Cloud Sql,我正试图在GoogleAppEngineFlexible环境上部署一个测试php项目 我的app.yaml如下所示: { "require": { "silex/silex": "^1.3", "php": "5.6.*", "google/apiclient": "^2.0" }, "require-dev": { "google/cloud-tools": "^0.6", "parago
{
"require": {
"silex/silex": "^1.3",
"php": "5.6.*",
"google/apiclient": "^2.0"
},
"require-dev": {
"google/cloud-tools": "^0.6",
"paragonie/random_compat": "^2.0",
"phpunit/phpunit": "~4"
}
}
<?php
$conn = mysql_connect('unix_socket:/cloudsql/my-first-project:us-central1:tempdb',
'username',
'password'
);
echo "<br><br/>connection done";
if(!$conn)
{
die('Connection Failed'.mysql_error());
}
else
{
die('Connection successful');
}
?>
*
*
composer.json如下所示:
{
"require": {
"silex/silex": "^1.3",
"php": "5.6.*",
"google/apiclient": "^2.0"
},
"require-dev": {
"google/cloud-tools": "^0.6",
"paragonie/random_compat": "^2.0",
"phpunit/phpunit": "~4"
}
}
<?php
$conn = mysql_connect('unix_socket:/cloudsql/my-first-project:us-central1:tempdb',
'username',
'password'
);
echo "<br><br/>connection done";
if(!$conn)
{
die('Connection Failed'.mysql_error());
}
else
{
die('Connection successful');
}
?>
我的示例代码如下所示:
{
"require": {
"silex/silex": "^1.3",
"php": "5.6.*",
"google/apiclient": "^2.0"
},
"require-dev": {
"google/cloud-tools": "^0.6",
"paragonie/random_compat": "^2.0",
"phpunit/phpunit": "~4"
}
}
<?php
$conn = mysql_connect('unix_socket:/cloudsql/my-first-project:us-central1:tempdb',
'username',
'password'
);
echo "<br><br/>connection done";
if(!$conn)
{
die('Connection Failed'.mysql_error());
}
else
{
die('Connection successful');
}
?>
但是,我无法连接。怎么了?我的假设是没有启用Google Cloud SQL API 转到以下链接,查看是否已启用。如果没有,请启用它
然后尝试重新部署应用程序(很遗憾,您需要再次部署它)。如果是这样的话,这是一个重复的我想我理解你为什么会出错 你应使用:
mysql_connect(':/cloudsql/my-first-project:us-central1:tempdb',
或
根据手册
谷歌云支持告诉我mysql\u connect已被弃用。从5.5开始,它就在PHP中被弃用,因此不支持它。因此不支持上述操作。已启用API。我在其他基于java的应用程序引擎项目中使用相同的云sql实例,在那里我没有问题。什么时候发生的?本周我们遇到了一个关于云sql代理的问题,但现在已经解决了。重新部署可能会解决问题,运气不好。仍然会出现同样的错误--没有这样的文件或目录我在上面添加了正确的答案。这个问题应该结束了。谷歌云支持告诉我mysql_connect已被弃用。从5.5开始,它就在PHP中被弃用,因此不支持它。我们最终决定迁移到PDO。非常感谢您的帮助。好的,您能将此问题标记为已解决或已结束吗?转换为PDO后,它是否有效?我也有同样的问题?这是因为你的配置错误。mysql_connect和PDO都应该可以工作。如果得到一个弃用警告,而不是一条模糊不清的完全失败的消息,那就太酷了。