谷歌云sql中的Mysql连接
Posted
技术标签:
【中文标题】谷歌云sql中的Mysql连接【英文标题】:Mysql Connect in google cloud sql 【发布时间】:2016-02-27 05:20:25 【问题描述】:我无法从 Google 云计算引擎连接到 mysql 到 MySQL 存储。当我在浏览器上转到 172.146.221.156/test.php 时,会显示这样的错误消息
警告:mysqli_connect(): (HY000/2002): Permission denied in /var/www/html/test.php on line 21 连接错误 (2002'
我的配置文件是:
<?php
$conn = mysqli_connect("176.154.226.114", "root", "password");
if (!$conn)
die('Connect Error (' .mysqli_connect_errno());
?>
我做错了什么?
【问题讨论】:
Connect DATABASE Error TYPE: 2002: Permission denied的可能重复 【参考方案1】:您是否在 Cloud SQL 实例中设置了安全性?计算引擎实例的 ip 应在您的云 sql 实例中列入白名单。您可以在访问控制下找到它 --> 授权网络
【讨论】:
是的。我的公众在白名单中。现在我面临另一个问题。我可以用 mysql_connect() 连接。但我无法连接 mysqli_connect()。会是什么原因??有人知道怎么做吗?【参考方案2】:我在 CentOS 7 上运行并遇到了同样的问题,直到我找到以下帖子:Connect DATABASE Error TYPE: 2002: Permission denied
基本上setsebool -P httpd_can_network_connect_db 1
在不禁用 SELinux 的情况下解决了我的问题。
希望对你有帮助。
【讨论】:
新功能。不确定如何“标记为重复”。只是觉得我的发现可能会有所帮助。 不用担心。我会做的,【参考方案3】:在您的谷歌云 => 转到 sql=> 点击您的实例 => 连接 => 公共 IP 添加 0.0.0.0/0 作为允许的网络,然后保存。
如果您只想远程访问,或者在谷歌中写下我的 ip 并添加它。
【讨论】:
以上是关于谷歌云sql中的Mysql连接的主要内容,如果未能解决你的问题,请参考以下文章
Sequelize.authenticate() 对 Docker 内的谷歌云 sql 连接不起作用(没有成功或错误响应)