在codeigniter中运行应用程序时,我有时会遇到以下问题:
消息:mysqli :: real_connect():( 08004/1040):连接太多
我随机收到此错误。有人在解决它吗?
$db['default'] = array( 'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => '',
'database' => 'BirthdayOwl',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'development'),
cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8', '
dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE );
答案 0 :(得分:1)
您可以在MySQL配置文件中增加max_connections
的值。文件的可能位置为:/etc/my.cnf
。
在文件上增加max_connections系统变量的值:
[mysqld]
set-variable=max_connections=1000
你也可以关闭MySQL的持久连接。
[MySQL]
; Allow or prevent persistent links.
mysql.allow_persistent=Off
这会对你有所帮助。如果它不起作用,请告诉我
答案 1 :(得分:1)
您可以通过设置'max_connections'来增加连接限制。但一切都有一些限制。您可以设置将占用100%内存的“max_connections”。如果你设置更大的数字,那将会造成混乱。
您应该使用'pconnect' => TRUE
来减少多重连接。此配置将打开持久性连接。
我建议您将'max_connections'与'pconnect' => TRUE
让我知道你仍然面临着问题。