codeigniter

时间:2017-10-10 07:12:24

标签: php mysql codeigniter ubuntu-14.04 remote-access

我有2台服务器A(代码)和B(数据库)。我需要访问(连接)A到B.我使用mysql 5.6 phpmyadmin和php在ubuntu 14.04中运行。我所知道的是我需要在phpmyadmin中将用户列入白名单。由于我是新手,所以任何人都可以指导我。我已经在服务器A中对database.php进行了更改,如下所示

$active_group = 'default';
$active_record = TRUE;

$db['default']['hostname'] = 'IP of Server B';


$db['default']['username'] = 'abc';
$db['default']['password'] = '123';
$db['default']['database'] = 'db1';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$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; 

执行此更改后,当我运行我的服务器A时会弹出以下错误

  

无法使用提供的设置连接到数据库服务器。

     

文件名:core / Loader.php

     

行号:338

我甚至通过绑定服务器的IP来编辑服务器B中的/etc/mysql/my.cnf

bind_ip=[Server B IP]

2 个答案:

答案 0 :(得分:1)

我无法评论,所以我只是在这里添加它,首先,确保您可以远程访问您的数据库服务器。在正常情况下,端口3306将被阻止。

答案 1 :(得分:0)

在database.php中给出所有正确的凭据后,我们需要在服务器B的bind-address=1270.0.1文件中注释掉/etc/mysql/my.cnf。在此之前停止mysql并在编辑完成后重新启动它。< / p>