首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接到Google Cloud SQL

问连接到Google Cloud SQL
EN

Stack Overflow用户
提问于 2014-03-13 01:55:13
回答 1查看 5.5K关注 0票数 4

我已经设置了一个Google Cloud SQL,它运行良好,但是我在使用文档中给出的任何方法进行连接时都遇到了问题:

PDO

代码语言:javascript
复制
$db = new PDO('mysql:unix_socket=/cloudsql/hello-php:my-cloudsql-instance;charset=utf8','<username>','<password>');

mysql_connect

代码语言:javascript
复制
$conn = mysql_connect(':/cloudsql/hello-php:my-cloudsql-instance', '<username>', '<password>');

mysqli

代码语言:javascript
复制
$sql = new mysqli(null, '<username>', '<password>', null, null, '/cloudsql/hello-php:my-cloudsql-instance');

我可以从MySQL工作台远程连接,但每当我尝试从网站使用上述功能时,我都会收到“在‘读取初始通信数据包’时丢失到MySQL服务器的连接”-但我通过授权的网络授予了Cloud SQL访问权限,并检查了给定的IP。我相信这与以下事实有关:我不是从Google App引擎连接,而是从我自己的开发数据库连接。如何从Google外部连接!?

更新:我已经用各种方法验证了我的IP,但是这个代码仍然不能工作。

代码语言:javascript
复制
$host="173.xxx.xx.xxx" <-- given from Google Developers COnsole
$db_username="root";
$db_pasword="xxxx"; <-- password I set after creating the instance

mysql_connect("$host", "$db_username", "$db_password")or die("cannot connect");

此页显示以下错误:

警告: mysql_connect()函数.mysql- connect :在‘读取初始通信数据包’时丢失与MySQL服务器的连接,系统错误: 111 in /..../connect.php on line 5 cannot connect

当我尝试这个PDO连接时,我也得到一个错误:

代码语言:javascript
复制
$dsn = 'mysql:host=173.xxx.xx.xxx;dbname=database_name';
$username = 'root';
$password = 'xxxx';

$dbh = new PDO($dsn, $username, $password);

未捕获异常'PDOException‘,并显示消息'SQLSTATEHY000无法连接到'173.xxx.xx.xxx’上的MySQL服务器(111)‘

EN

回答 1

Stack Overflow用户

发布于 2014-03-13 02:04:38

您不能使用unix套接字(仅适用于本地计算机)进行远程连接,您需要通过网络进行连接。

谷歌有一个brief description,你需要做什么来实现这一点,但基本上归结为你需要授权你想要连接的IP编号/范围,并使用实例的公共IP连接到数据库。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22359910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档