Data source rejected establishment of connection, message from server: "Too many connections"

來源:互聯網
上載者:User

這些天一直在弄專案管理的大作業,web程式經常遇到這個問題,但是稍微等會又好好的了,一開始懷疑是沒有關閉session,但之後查看了代碼,發現主要原因出在資料庫的配置上

異常資訊:Data source rejected establishment of connection,  message from server: "Too many connections"


可能的原因

1.mysql的max_connections屬性配置太小的問題
2.可能是多次insert,update操作沒有關閉session。


解決方案:
1.修改tomcat裡的session 的wait_timeout時間減少為200
2.對處理量大的對資料庫insert或update的操作提供transaction支援.(Spring中配置)

原因:

mysql安裝目錄下的my.ini(linux: my.cnf)中設定的並發串連數太少或者系統繁忙導致串連數被佔滿


解決方式:

Windows: 找到mysql的安裝目錄,開啟my.ini檔案,找到max_connections配置,預設是100,設定成1000,重啟mysql

一定要重新啟動MYSQL才會生效

cmd下執行

net stop mysql

net start mysql

 

Linux: 找到mysql的安裝目錄,開啟my.cnf檔案

 

在[mysqld] 下面添加下面三行


max_connections=1000
max_user_connections=500

wait_timeout=200

 

//max_connections設定最大串連數為1000

//max_user_connections設定每使用者最大串連數為500
//wait_timeout表示200秒後將關閉空閑(IDLE)的串連,但是對正在工作的串連不影響。

//儲存退出,並重新啟動MySQL

sudo stop mysql

sudo start mysql


//重新啟動MySQL後使用下面的命令查看修改是否成功

# mysqladmin -uroot -p variables

Password:

//可以看到以下項說明修改成功

| max_connections                 | 1000

| max_user_connections            | 500

| wait_timeout                    | 200

 


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.