我试图将运行在Compute实例上的drupal连接到Cloud数据库,但每次组合都失败。我可以从另一台服务器连接到Cloud,但我不确定MySQL连接从我的实例到Cloud所采取的路径是什么,但也希望配置尽可能安全的与数据库服务器的连接
这是我的配置
服务器
用户
网络
我的问题是,如何通过提供dbname、dbusername、dbuserpwd、host(IPAddress)来使计算实例连接到云SQL,从而使其连接与工作台完全相同,但仍然具有尽可能的限制?问题在于计算实例的配置、所提供的连接设置或云sql。
发布于 2014-04-03 09:42:39
它看起来是由安装程序丢弃或省略主机值的drupal问题和限制来自我所使用的客户操作系统CentOS的远程db连接的CentOS保护强制执行问题的组合。
在将文件添加到web根文件夹后,可能还需要重新标记其正确的SELinux标签。
要解决这个问题:自己编辑drupal 7 settings.php以包含一个mysql连接
$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'dbname',
'username' => 'dbuser',
'password' => 'dbpassword',
'host' => 'CloudSQLIPAddress',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
),
),
);
在运行CentOS的GCE实例中,从ssh运行下面的命令以允许db连接退出,我不认为此设置将在服务器重新启动后存活下来,但我可以满足我的需要。
setsebool httpd_can_network_connect_db=1
若要将SElinux上下文重新应用于复制的文件,请运行以下命令
restorecon -rv /var/www/html
https://stackoverflow.com/questions/22809306
复制相似问题