0

当我尝试使用 EC2 上的 codeigniter 将 Amazon EC2 实例与 RDS 实例连接时,我收到一条消息:无法使用提供的设置连接到您的数据库服务器。但是当使用具有相同参数的经典专用服务器连接RDS时,连接成功。

$db['default']['hostname'] = 'xxxxxxx'; 
$db['default']['username'] = 'xxxxx';
$db['default']['password'] = 'xxxxxxx';
$db['default']['database'] = 'xxxxxxx';
$db['default']['dbdriver'] = 'mysqli';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['port'] = 3306;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
$db['default']['ssl_set'] = TRUE;
$db['default']['ssl_key'] = NULL;
$db['default']['ssl_cert'] = NULL;
$db['default']['ssl_ca'] = realpath('./mycertificate.pem');
$db['default']['ssl_capath'] = NULL;
$db['default']['ssl_cipher'] = NULL;
4

1 回答 1

0

如果您能够从另一台服务器访问您的 RDS,我会说您的安全组可能会停止您的 EC2 和 RDS 之间的访问。它们是否位于 VPC 中的单独私有子网中?

如果是这样,您应该在安全组内部分配每个实例在端口 3306 上访问和相互通信的能力(您实际上可以在安全组选项卡中分配一个安全组作为源,这太棒了!)

如果不是,您的环境在 EC2 和 RDS 之间是什么样的?

于 2013-09-18T07:20:58.740 回答