MySQL數據庫查看當前連接數、最大連接數並修改連接數


  在公司項目開發過程中,隨着項目增加,經常會把每個項目的平台部署成開發、測試環境,而數據庫就有可能是多個平台共用一個了,現在基本上都是用的微服務架構,那么數據庫連接就不夠用了。

我們用的是MySQL數據庫,最近遇到了這個尷尬的問題,本地修改了代碼啟動的時候經常會連不上數據庫,提示就是:too many connections。既然連接太多,要么減少連接,要么擴大最大可連接數,

經過查詢,MySQL數據庫的默認最大連接數是100,而最大連接數可以達到16384個,那就擴大連接數好了。先介紹幾個查詢關於數據庫連接數的命令:

  1、查看數據庫當前連接信息,可以看到連接數據庫的進程id,ip,用戶名,連接的數據庫,連接狀態,連接時長等

  命令:SHOW FULL processlist;執行結果如下圖:

 

   有了進程id,我們可以殺死一些無用的進程,如:kill 130。需要注意,root賬號權限很大,可以kill大部分進程,其他賬號只能kill自己使用的進程。

  2、查看數據庫配置的最大連接數。

  命令:show variables like '%max_connections%';執行結果如下圖:

 

   3、查看數據庫所有配置。

  命令:show global variables;執行結果如下圖:

 

   與2中查看最大連接數相同,如果我們需要找到某一個變量,就用 LIKE 關鍵字模糊搜索就可以了。如:show global variables like '%basedir%';可以查看數據庫的安裝路徑。global是全局的意思。

  以上命令在Navicat等工具中也是可以執行的。回到今天的主題,如果我們的數據庫連接數較小,該如何修改配置呢?有兩種方法。

 

  方法一:進入MySQL用命令行修改,但是MySQL重啟后就失效了,需要重新設置。(不推薦)

  命令如下:

  1、show variables like 'max_connections';(查看當前最大連接數)

  2、set global max_connections=1000;(設置最大連接數為1000,可以再次執行上面的命令查看設置是否成功)

  方法二:修改MySQL配置文件,永久生效(推薦)

  1、進入MySQL安裝目錄,打開my.ini或my.cnf文件;

  2、查看max_connections=100的配置參數,修改為max_connections=1000;如果沒有這個參數,直接添加max_connections=1000即可;

  3、保存配置文件並退出,重啟MySQL服務即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM