當前位置:編程學習大全網 - 源碼下載 - 誰可以壹步壹步教我解決MySQL Server Error:Too many connections ( 1040 )的問題?

誰可以壹步壹步教我解決MySQL Server Error:Too many connections ( 1040 )的問題?

加大MySql的最大連接數

mysql的最大連接數默認是100, 這個數值對於並發連接很多的數據庫應用是遠遠不夠的,當連接請求大於默認連接數後,就會出現無法連接數據庫的錯誤,因此我們需要把它適當調大壹些, 有兩種辦法可以修改最大連接數,壹種是修改safe_mysqld,另壹種是直接修改原代碼並重新編譯。下面我們就分別介紹這兩種方法:

1.修改safe_mysqld

找到safe_mysqld編輯它,找到mysqld啟動的那兩行,在後面加上參數 :

-O max_connections=1000

例如 :(其中前面有---的是原來的內容,而+++是修改過以後的)

--- safe_mysqld.orig Mon Sep 25 09:34:01 2000

+++ safe_mysqld Sun Sep 24 16:56:46 2000

@@ -109,10 +109,10 @@

if test \"$#\" -eq 0

then

nohup $ledir/mysqld --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR

- --skip-locking >> $err_log 2>&1

+ --skip-locking -O max_connections=1000 >> $err_log 2>&1

else

nohup $ledir/mysqld --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR

- --skip-locking \"$@\" >> $err_log 2>&1

+ --skip-locking \"$@\" -O max_connections=1000 >> $err_log 2>&1

fi

if test ! -f $pid_file # This is removed if normal shutdown

then

然後關閉mysql重啟它,用

/mysqladmin所在路徑/mysqladmin -uroot -p variables

輸入root數據庫賬號的密碼後可看到

| max_connections | 1000 |

即新改動已經生效。

2.修改原代碼

解開MySQL的原代碼,進入裏面的sql目錄修改mysqld.cc找到下面壹行:

{ \"max_connections\", (long*) &max_connections,1000,1,16384,0,1},

把它改為:

{ \"max_connections\", (long*) &max_connections,1000,1,16384,0,1},

存盤退出,然後./configure ;make;make install可以獲得同樣的效果。

3、

查看max_connections

進入MySQL,用命令:show variables

查看數據庫最大可連接數的變量值:max_connections

查看threads_connected

進入MySQL,用命令:show status

查看當前活動的連接線程變量值:threads_connected

設置max_connections

設置辦法是在my.cnf文件中,添加下面的最後紅色的壹行:

--------------------------------------------------------------------------------

[mysqld]

port=3306

#socket=MySQL

skip-locking

set-variable = key_buffer=16K

set-variable = max_allowed_packet=1M

set-variable = thread_stack=64K

set-variable = table_cache=4

set-variable = sort_buffer=64K

set-variable = net_buffer_length=2K

set-variable = max_connections=32000

--------------------------------------------------------------------------------

修改完畢後,重啟MySQL即可。當然,為了確保設置正確,應該查看壹下max_connections。

註意:

1、雖然這裏寫的32000。但實際MySQL服務器允許的最大連接數16384;

2、除max_connections外,上述其他配置應該根據妳們系統自身需要進行配置,不必拘泥;

3、添加了最大允許連接數,對系統消耗增加不大。

4、如果妳的mysql用的是my.ini作配置文件,設置類似,但設置的格式要稍作變通

  • 上一篇:c語言源程序文件經過連接後生成文件的擴展名是什麽?
  • 下一篇:漲停先鋒的測評分析
  • copyright 2024編程學習大全網