CodeIgniter消息:mysqli :: real_connect():( HY000 / 2002):连接超时,在服务器中给出错误

时间:2016-11-22 13:31:57

标签: php mysql codeigniter mysqli

我在Codeigniter 3.1.1版中创建了一个项目。它在当地工作得很好。但是当我将它上传到服务器然后给出错误时:

  

遇到PHP错误

     

严重性:警告

     

消息:mysqli :: real_connect():( HY000 / 1045):用户'myprac_usr'@'localhost'拒绝访问(使用密码:是)

     

文件名:mysqli / mysqli_driver.php

     

行号:201

回溯:

  

文件:/var/www/html/myproject/application/controllers/User.php

     

行:10

     

功能:__construct

     

档案:/var/www/html/myproject/index.php

     

行:315

     

功能:require_once

$db['default'] = array(
'dsn'   => '',
'hostname' => 'hostip',
'username' => 'mydbusername',
'password' => 'mydbpassword',
'database' => 'mydbusername',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);  

我还用“localhost”而不是host ip更改了主机名。

Mysql version- 5.6.27

PHP版本 - 5.5.36

2 个答案:

答案 0 :(得分:0)

很可能您没有为数据库配置提供正确的凭据。

仔细检查您的用户名,密码,主机名

答案 1 :(得分:0)

第一个检查远程服务器mysql端口-

telnet 182.122.33.44 3306

如果连接成功会打印mysql version & others

然后在你的 CI 代码上添加 mysql 端口 -

'hostname' => '182.122.33.44:3306',