Ela*_*lad 0 google-cloud-sql google-compute-engine
我在用 php 连接我的数据库云 sql 时遇到问题。我已经尝试了所有可能的连接方式(pdo、mysqli 和 mysql),但都没有奏效。
我已经为 can sql 实例放置了一个 IPv4,并在允许的网络部分授权了计算引擎 IP。当我尝试从计算引擎连接时
mysql --host=cloud_sql_IP --user=my_user --password
Run Code Online (Sandbox Code Playgroud)
它正在工作,我能够看到表格。
在 php 端,我把这个代码:
$db = mysql_connect(<CLOUD_SQL_IPV4>, 'root', '');
if (!$db){
die('Connect Error (' . mysql_error());
}
Run Code Online (Sandbox Code Playgroud)
我收到“连接错误(权限被拒绝)”
当我尝试这种方式时:
$conn = mysql_connect(":/cloudsql/<COMPUTE_INSTANCE>:<DB>", "root", "");
if (!$conn) {
die('Connect Error (' . mysql_error());
}
Run Code Online (Sandbox Code Playgroud)
我得到:“连接错误(没有这样的文件或目录”
我还应该做什么?
谢谢!
深入研究 2 天后,我设法连接了云数据库
首先运行这个以获得权限修复(centos)
setsebool httpd_can_network_connect=1
Run Code Online (Sandbox Code Playgroud)
对于 php,它应该这样写:
new mysqli(
<IP_V4>, // host
'root', // username
'', // password
<DB_NAME>, // database name
null,
'/cloudsql/<GCE_INSTANCE>:<DB>'
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1105 次 |
| 最近记录: |