使用codeIgniter连接外部数据库

时间:2016-02-01 09:25:37

标签: php codeigniter mysqli

我是代码点火器的新手, 我尝试连接本地数据库然后成功连接,但在连接外部数据库时导致错误

A PHP Error was encountered

Severity: Warning

Message: mysqli::real_connect(): (HY000/2003): Can't connect to MySQL server on 'xxxxx.gridserver.com' (110)

Filename: mysqli/mysqli_driver.php

Line Number: 202

Backtrace:

File: /var/www/html/restapi/application/libraries/REST_Controller.php
Line: 375
Function: __construct

File: /var/www/html/restapi/application/controllers/Project.php
Line: 26
Function: __construct

File: /var/www/html/restapi/index.php
Line: 292
Function: require_once

我不熟悉mysql,

我搜索的更多,但我不知道他们在说什么, 有什么可以做外部数据库连接

提前谢谢!

3 个答案:

答案 0 :(得分:2)

检查你的config-> database.php以确保 $分贝['默认'] ['主机名'],$分贝['默认'] ['用户名'],$分贝[& #39;默认'] ['密码'],$ db ['默认'] ['数据库']设置正确。

另一种可能性是您尝试远程连接MySQL服务器,但服务器本身阻止了远程连接。因此,请确保您能够通过Mysql客户端软件(例如" MySQL Workbench"

)使用相同的主机,用户名和密码集连接您的mysql数据库。

答案 1 :(得分:2)

正如Tan See Youu所述,很可能您在database.php中可能有不正确的凭据,或者确实命名的远程连接被服务器阻止。虽然在某些情况下主机提供了用于允许通过安全连接进行远程连接的隧道。您可能想询问您的托管服务器是否有SSH隧道,如果它们阻止直接连接,您可以使用它。

答案 2 :(得分:2)

1.检查您的应用程序/ config / database.php

$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost', // your database machine name, this could have localhost, ip address or domain name.
    'username' => 'yourmysluser',
    'password' => 'yourmysqlpassword',
    'database' => 'yourdb',
    'dbdriver' => 'mysqli',
  1. 检查您的mysql数据库,默认情况下,出于安全原因禁用远程访问MySQL数据库服务器。但是,有时您需要从家中或Web服务器远程访问数据库服务器。您可以使用mysql控制台或phpmyadmin或依赖主机的其他数据库工具启用远程mysql访问。 参考:
  2. Enable remote MySQL connection: ERROR 1045 (28000): Access denied for user

    https://www.youtube.com/watch?v=xXOq9U9fzOo