Codeigniter错误"无法使用提供的设置连接到数据库服务器"

Nou*_*umi 5 php codeigniter

当我尝试在我的域上传这个项目时面临错误"无法使用提供的设置连接到您的数据库服务器"

我检查了我的config.phpdatabase.php文件,所有信息都是正确的:

 $db['default']['hostname'] = "etc.com";
 $db['default']['username'] = "etc"; 
 $db['default']['password'] = "etc@etc";
 $db['default']['database'] = "visiting_link";
 $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"; 
Run Code Online (Sandbox Code Playgroud)

有没有解决这个问题的方法?请参考任何帮助材料.我正在使用fileZilla.
谢谢 !

End*_*del 14

将"db_debug"设置为false可以解决我的问题.

我正在使用Snow Leopard.

编辑:db_debug只是模糊了我的方向.在我的案例中的解决方案只是mysql.sock引用路径,在这个问题上解决:警告:mysql_connect():[2002]没有这样的文件或目录(尝试通过unix:///tmp/mysql.sock连接)在

OS X使用/tmp/mysql.sock,默认情况下php.ini引用/var/mysql/mysql.sock.只需创建符号链接即可解决问题:

sudo mkdir -p /var/mysql/ && cd /var/mysql/
sudo ln -s /tmp/mysql.sock ./mysql.sock
Run Code Online (Sandbox Code Playgroud)


Dan*_*itt 3

尝试将“dbdriver”设置为“mysqli”

$db['default']['dbdriver'] = "mysqli";
Run Code Online (Sandbox Code Playgroud)

它是 MySQL 改进扩展 ( http://php.net/manual/en/book.mysqli.php ),您的服务器可能设置为使用此扩展而不是标准 MySQL 扩展。

当所有其他设置都正确时,我已经看到这种情况发生了几次,因为如果选择了错误的驱动程序,连接将会失败。