MySQL连接方式:长连接或者短连接
MySQL 既支持短連接,也支持長連接。短連接就是操作完畢以后,馬上close 掉。長連接可以保持打開,減少服務端創建和釋放連接的消耗,后面的程序訪問的時候還可以使用這個連接。一般我們會在連接池中使用長連接。
保持長連接會消耗內存。長時間不活動的連接,MySQL 服務器會斷開。
show global variables like 'wait_timeout'; -- 非交互式超時時間,如JDBC 程序 show global variables like 'interactive_timeout'; -- 交互式超時時間,如數據庫工具默認都是28800 秒,8 小時。
我們怎么查看MySQL 當前有多少個連接?
可以用show status 命令:
show global status like 'Thread%';Threads_cached:緩存中的線程連接數。
Threads_connected:當前打開的連接數。
Threads_created:為處理連接創建的線程數。
Threads_running:非睡眠狀態的連接數,通常指并發連接數。
每產生一個連接或者一個會話,在服務端就會創建一個線程來處理。反過來,如果要殺死會話,就是Kill 線程。
有了連接數,怎么知道當前連接的狀態?
也可以使用SHOW PROCESSLIST; (root 用戶)查看SQL 的執行狀態。
https://dev.mysql.com/doc/refman/5.7/en/show-processlist.html
一些常見的狀態:
https://dev.mysql.com/doc/refman/5.7/en/thread-commands.html
MySQL 服務允許的最大連接數是多少呢?
在5.7 版本中默認是151 個,最大可以設置成16384(2^14)。
show variables like 'max_connections';show 的參數說明:
1、級別:會話session 級別(默認);全局global 級別
2、動態修改:set,重啟后失效;永久生效,修改配置文件/etc/my.cnf
set global max_connections = 1000;?
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的MySQL连接方式:长连接或者短连接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL通信类型:同步或者异步
- 下一篇: MySQL通信方式