主頁 > 知識庫 > Mysql錯誤:Too many connections的解決方法

Mysql錯誤:Too many connections的解決方法

熱門標(biāo)簽:自己做地圖標(biāo)注需要些什么 電話機(jī)器人的價格多少錢一個月 400電話申請廠家現(xiàn)貨 中國地圖標(biāo)注公司 福建外呼電銷機(jī)器人加盟 天津公司外呼系統(tǒng)軟件 昌德訊外呼系統(tǒng) 百度地圖標(biāo)注要什么軟件 徐涇鎮(zhèn)騰訊地圖標(biāo)注

MySQL數(shù)據(jù)庫 Too many connections

出現(xiàn)這種錯誤明顯就是 mysql_connect 之后忘記 mysql_close;

當(dāng)大量的connect之后,就會出現(xiàn)Too many connections的錯誤,mysql默認(rèn)的連接為100個,而什么情況下會出現(xiàn)這種錯誤呢?

正常的mysql_connect 之后調(diào)用 mysql_close()關(guān)閉連接

但在連接錯誤時,會者mysql_real_query()出現(xiàn)錯誤退出時,可能忘記mysql_close();

所以在程序return 之前一定要判斷是否close(),最穩(wěn)妥的方法就是在寫任何函數(shù)時都只有一個出口!

還有可以通過修改mysql配置文件來加大允許連接的數(shù)量!

有時你的服務(wù)器是經(jīng)常出現(xiàn)這樣的錯誤呢:

錯誤信息如下:

Can not connect to MySQL server

Error: Too many connections

Errno.: 1040

Similar error report has beed dispatched to administrator before.

從官方文檔知道Linux上面編譯安裝的mysql默認(rèn)的連接為100個

文檔:http://dev.mysql.com/doc/refman/5.0/en/too-many-connections.html

mysql官方告訴我們需要修改max_connections的值,那么我們怎么去修改呢?有兩種方法

1、修改配置文件文件

修改/etc/my.cnf這個文件,在[mysqld] 中新增max_connections=N,如果你沒有這個文件請從編譯源碼中的support-files文件夾中復(fù)制你所需要的*.cnf文件為到 /etc/my.cnf。我使用的是my-medium.cnf,中型服務(wù)器配置。例如我的[mysqld]的內(nèi)容如下

[mysqld]

port = 3306

socket = /tmp/mysql.sock

skip-locking

key_buffer = 160M

max_allowed_packet = 1M

table_cache = 64

sort_buffer_size = 512K

net_buffer_length = 8K

read_buffer_size = 256K

read_rnd_buffer_size = 512K

myisam_sort_buffer_size = 8M

max_connections=1000

由于對mysql還不是很熟悉,所以很多參數(shù)沒有修改。哈哈。。

2、非使用mysqld腳本自動啟動的用戶。

修改MYSQLHOME/bin/mysqldsafe文件例如:/usr/local/mysql/bin/mysqldsafe這個文件grep−n‘maxconnection′

MYSQLHOME/bin/mysqldsafe文件例如:/usr/local/mysql/bin/mysqldsafe這個文件grep−n‘maxconnection′MYSQL_HOME/bin/mysqld_safe

修改對應(yīng)行號的max_connections參數(shù)值

3、服務(wù)器登錄mysql : mysql -u root -p

百分之九十進(jìn)不去,進(jìn)不去的執(zhí)行重啟命令 :/etc/init.d/mysql restart(centos系統(tǒng))

此時重啟mysql就能連接mysql了,如果還有時間,可以繼續(xù)下一步,治病要治本

打開配置文件 添加一下配置 vi /etc/my.cnf

wait_timeout = 600

interactive_timeout = 600

再次重啟mysql即可

原理解答

mysql 默認(rèn)100 連接數(shù),超過則連不上,實際工作的連接數(shù)遠(yuǎn)遠(yuǎn)沒有100,大部分在sleep

所以要么增大連接數(shù),要么殺掉無用連接,推薦后者。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • mysql連接數(shù)設(shè)置操作方法(Too many connections)
  • Mysql 錯誤too many connections解決方案
  • mysql too many open connections問題解決方法
  • 解決mysql 1040錯誤Too many connections的方法
  • mysql "too many connections" 錯誤 之 mysql解決方法
  • MySQL too many connections錯誤的原因及解決

標(biāo)簽:梅河口 北京 荊門 黔西 駐馬店 昌都 陜西 鄂爾多斯

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql錯誤:Too many connections的解決方法》,本文關(guān)鍵詞  Mysql,錯誤,Too,many,connections,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Mysql錯誤:Too many connections的解決方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于Mysql錯誤:Too many connections的解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章