【问题标题】:Remote database connection in codeignitercodeigniter 中的远程数据库连接
【发布时间】:2017-10-10 07:12:23
【问题描述】:

我有 2 个服务器 A(代码)和 B(数据库)。我需要访问(连接)A 到 B。我正在使用 mysql 5.6 phpmyadmin 和在 ubuntu 14.04 中运行的 php。我所知道的是我需要在 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]

【问题讨论】:

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


【解决方案1】:

我无法发表评论,所以我将在此处添加它,首先,请确保您可以远程访问您的数据库服务器。一般情况下3306端口会被阻塞。

【讨论】:

  • 我什至在 database.php 中指定了相同的端口。还是没有运气。
  • 如果使用标准端口,不需要在database.php中重新定义,你编辑my.cnf后重启服务器了吗?也许这会有所帮助:cyberciti.biz/tips/…
【解决方案2】:

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

【讨论】:

猜你喜欢
  • 2016-05-15
  • 2011-12-27
  • 2016-10-29
  • 2019-11-13
  • 1970-01-01
  • 2019-08-26
  • 1970-01-01
  • 1970-01-01
  • 2012-09-06
相关资源
最近更新 更多