Php Google Cloud SQL:读取问候语包时出错
我是谷歌应用引擎的新手。我目前正在这里学习Google App Engine的教程: 我似乎无法让我的应用程序访问Google App Engine上的云SQL数据库 我一直收到以下错误:Php Google Cloud SQL:读取问候语包时出错,php,mysql,google-app-engine,pdo,google-cloud-sql,Php,Mysql,Google App Engine,Pdo,Google Cloud Sql,我是谷歌应用引擎的新手。我目前正在这里学习Google App Engine的教程: 我似乎无法让我的应用程序访问Google App Engine上的云SQL数据库 我一直收到以下错误: Warning: PDO::__construct(): MySQL server has gone away in /base/data/home/apps/p~iconic-indexer-112318/1.388447661471940227/guestbook.php on line 24 Warn
Warning: PDO::__construct(): MySQL server has gone away in /base/data/home/apps/p~iconic-indexer-112318/1.388447661471940227/guestbook.php on line 24
Warning: PDO::__construct(): Error while reading greeting packet. PID=-1 in /base/data/home/apps/p~iconic-indexer-112318/1.388447661471940227/guestbook.php on line 24 {"outcome":false,"message":"Unable to connect."}
我已经研究了指向语法错误的其他问题,但我不太确定我在这里看到了一个。我相信我的应用程序可以访问云SQL数据库。因为我已经在我的应用程序中创建了数据库实例,并且根据此链接:
我的应用程序应该可以访问数据库。
除此之外,我没有其他授权的应用程序引擎应用程序,即使我尝试添加了图标索引器-112318,它也不允许我添加,并通知我“无法完成操作”。我怀疑这是因为应用程序已经具有访问权限
我已经检查了两次,应用程序和实例都在同一个区域:us-east1
项目Id:IGNORIC-indexer-112318
实例Id:icogal-indexer-112318:hellodb
// Connect from App Engine.
try{
$db = new pdo('mysql:unix_socket=/cloudsql/iconic-indexer-112318:iconic-indexer-112318:hellodb;dbname=guestbook', 'root', '');
}catch(PDOException $ex){
die(json_encode(
array('outcome' => false, 'message' => 'Unable to connect.')
)
);
}
我不确定出了什么问题。感谢您的帮助。您是否检查了您的云SQL实例是否分配了IPv4地址
您可以在访问控制>IP地址下进行检查。有一个按钮“请求IPv4地址”可以启用它。可能与此错误有关,该错误似乎尚未解决:一般来说,重新阅读并确认文档是确保您不会遗漏某些内容的好方法。