欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

MySQL中如何淺析interactive_timeout和wait_timeout

本篇文章給大家分享的是有關(guān)MySQL中如何淺析interactive_timeout和wait_timeout,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),渾南企業(yè)網(wǎng)站建設(shè),渾南品牌網(wǎng)站建設(shè),網(wǎng)站定制,渾南網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,渾南網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

一 前言
  這篇文章源于自己一個(gè)無(wú)知的提問(wèn),作為一個(gè)DBA 老鳥(niǎo),實(shí)在汗顏 。如圖,修改wait_timeout參數(shù)之后 并沒(méi)有及時(shí)生效,于是乎去跑到技術(shù)支持群里問(wèn)了。。ps 應(yīng)該去查g.cn 才對(duì)。。
 MySQL中如何淺析interactive_timeout和wait_timeout
  本文通過(guò)測(cè)試我們要弄清楚兩個(gè)問(wèn)題
  a 繼承關(guān)系 wait_timeout在session和global級(jí)別分別繼承那個(gè)參數(shù)?
  b 生效參數(shù) 在會(huì)話中到底哪個(gè)參數(shù)決定了會(huì)話的存活時(shí)間?

二 參數(shù)介紹
首先說(shuō)明兩個(gè)關(guān)鍵詞 通過(guò)MySQL 客戶端連接db的是交互會(huì)話,通過(guò)jdbc等程序連接db的是非交互會(huì)話。
interactive_timeout: MySQL服務(wù)器關(guān)閉交互式連接前等待的秒數(shù)。交互式客戶端定義為在mysql_real_connect()中使用CLIENT_INTERACTIVE選項(xiàng)的客戶端。參數(shù)默認(rèn)值:28800秒(8小時(shí))
wait_timeout:          MySQL服務(wù)器關(guān)閉非交互連接之前等待的秒數(shù)。在會(huì)話啟動(dòng)時(shí),根據(jù)全局wait_timeout值或全局interactive_timeout值初始化會(huì)話wait_timeout值,取決于客戶端類(lèi)型--由mysql_real_connect()的連接選項(xiàng)CLIENT_INTERACTIVE定義。參數(shù)默認(rèn)值:28800秒(8小時(shí))
2.1 繼承關(guān)系
1) 單獨(dú)設(shè)置global級(jí)別的interactive_timeout  

  1. set global interactive_timeout = 300

  2. session1 [RO] 09:34:20 >set global interactive_timeout=300;

  3. Query OK, 0 rows affected (0.00 sec)

  4. session1 [RO] 09:39:15 >select variable_name,variable_value from information_schema.global_variables where variable_name in ('interactive_timeout','wait_timeout');

  5. +---------------------+----------------+

  6. | variable_name       | variable_value |

  7. +---------------------+----------------+

  8. | INTERACTIVE_TIMEOUT | 300            |

  9. | WAIT_TIMEOUT        | 28800          |

  10. +---------------------+----------------+

  11. 2 rows in set (0.00 sec)

  12. session1 [RO] 09:39:21 >select variable_name,variable_value from information_schema.session_variables where variable_name in ('interactive_timeout','wait_timeout');

  13. +---------------------+----------------+

  14. | variable_name       | variable_value |

  15. +---------------------+----------------+

  16. | INTERACTIVE_TIMEOUT | 300            |

  17. | WAIT_TIMEOUT        | 28800          |

  18. +---------------------+----------------+

  19. 2 rows in set (0.00 sec)

  20. 登陸另外一個(gè)會(huì)話

  21. session2 [RO] 09:39:35 >select variable_name,variable_value from information_schema.global_variables where variable_name in ('interactive_timeout','wait_timeout');

  22. +---------------------+----------------+

  23. | variable_name       | variable_value |

  24. +---------------------+----------------+

  25. | INTERACTIVE_TIMEOUT | 300            |

  26. | WAIT_TIMEOUT        | 28800          |

  27. +---------------------+----------------+

  28. 2 rows in set (0.00 sec)

  29. session2 [RO] 09:39:51 >select variable_name,variable_value from information_schema.session_variables where variable_name in ('interactive_timeout','wait_timeout');

  30. +---------------------+----------------+

  31. | variable_name       | variable_value |

  32. +---------------------+----------------+

  33. | INTERACTIVE_TIMEOUT | 300            |

  34. | WAIT_TIMEOUT        | 300            |

  35. +---------------------+----------------+

  36. 2 rows in set (0.00 sec)

分析
  在交互模式下,session和global級(jí)別的 interactive_timeout 繼承了 interactive_timeout global的值。而 wait_timeout 的值,session級(jí)別繼承了interactive_timeout。global級(jí)別的wait_timeout 則不受影響 。
2) 設(shè)置session級(jí)別的 interactive_timeout 

  1. session1 [RO] 09:44:07 >set session interactive_timeout=300;

  2. Query OK, 0 rows affected (0.00 sec)

  3. session1 [RO] 09:44:27 >select variable_name,variable_value from information_schema.global_variables where variable_name in ('interactive_timeout','wait_timeout');

  4. +---------------------+----------------+

  5. | variable_name       | variable_value |

  6. +---------------------+----------------+

  7. | INTERACTIVE_TIMEOUT | 28800          |

  8. | WAIT_TIMEOUT        | 28800          |

  9. +---------------------+----------------+

  10. 2 rows in set (0.00 sec)

  11. session1 [RO] 09:44:31 >select variable_name,variable_value from information_schema.session_variables where variable_name in ('interactive_timeout','wait_timeout');

  12. +---------------------+----------------+

  13. | variable_name       | variable_value |

  14. +---------------------+----------------+

  15. | INTERACTIVE_TIMEOUT | 300            |

  16. | WAIT_TIMEOUT        | 28800          |

  17. +---------------------+----------------+

  18. 2 rows in set (0.00 sec)

  19. 另外開(kāi)啟一個(gè)會(huì)話

  20. session2 [RO] 09:44:41 >select variable_name,variable_value from information_schema.session_variables where variable_name in ('interactive_timeout','wait_timeout');

  21. +---------------------+----------------+

  22. | variable_name | variable_value |

  23. +---------------------+----------------+

  24. | INTERACTIVE_TIMEOUT | 28800 |

  25. | WAIT_TIMEOUT | 28800 |

  26. +---------------------+----------------+

  27. 2 rows in set (0.01 sec)

  28. session2 [RO] 09:44:44 >select variable_name,variable_value from information_schema.global_variables where variable_name in ('interactive_timeout','wait_timeout');

  29. +---------------------+----------------+

  30. | variable_name       | variable_value |

  31. +---------------------+----------------+

  32. | INTERACTIVE_TIMEOUT | 28800          |

  33. | WAIT_TIMEOUT        | 28800          |

  34. +---------------------+----------------+

  35. 2 rows in set (0.00 sec)

分析
  從上面的例子來(lái)看 wait_timeout 并不受session級(jí)別的interactive_timeout的值的影響。
3) 同時(shí)設(shè)置兩者的值,且不同。

  1. session1 [RO] 09:46:42 >

  2. (none) [RO] 09:46:42 >set global interactive_timeout=300;

  3. Query OK, 0 rows affected (0.00 sec)

  4. session1 [RO] 09:46:55 >set global wait_timeout=360;

  5. Query OK, 0 rows affected (0.00 sec)

  6. 另開(kāi)啟一個(gè)會(huì)話

  7. session2 [RO] 09:47:20 >select variable_name,variable_value from information_schema.session_variables where variable_name in ('interactive_timeout','wait_timeout');

  8. +---------------------+----------------+

  9. | variable_name       | variable_value |

  10. +---------------------+----------------+

  11. | INTERACTIVE_TIMEOUT | 300            |

  12. | WAIT_TIMEOUT        | 300            |

  13. +---------------------+----------------+

  14. 2 rows in set (0.00 sec)

  15. session2 [RO] 09:47:22 >select variable_name,variable_value from information_schema.global_variables where variable_name in ('interactive_timeout','wait_timeout');

  16. +---------------------+----------------+

  17. | variable_name       | variable_value |

  18. +---------------------+----------------+

  19. | INTERACTIVE_TIMEOUT | 300            |

  20. | WAIT_TIMEOUT        | 360            |

  21. +---------------------+----------------+

  22. 2 rows in set (0.00 sec)

分析
 從案例1 2中可以得出session級(jí)別的wait_timeout 繼承g(shù)lobal 級(jí)別的 interactive_timeout 的值 global級(jí)別的session則不受影響。在沒(méi)有改變 interactive_timeout的值的情況下,去修改wait_timeout的值
 結(jié)果無(wú)效。就會(huì)出現(xiàn)前言中我遇到的情況。
2.2 有效參數(shù)
  通過(guò)一個(gè)例子檢測(cè)影響會(huì)話的參數(shù)是哪個(gè)?驗(yàn)證方式通過(guò)設(shè)置全局的timeout時(shí)間(注意兩者時(shí)間不同),另外起一個(gè)會(huì)話

  1. session1 [RO] 10:20:56 >set global interactive_timeout=20;

  2. Query OK, 0 rows affected (0.00 sec)

  3. session1 [RO] 10:23:32 >set global wait_timeout=10;

  4. Query OK, 0 rows affected (0.00 sec)

會(huì)話2進(jìn)行查詢

  1. mysql> select sleep(5);

  2. +----------+

  3. | sleep(5) |

  4. +----------+

  5. | 0        |

  6. +----------+

  7. 1 row in set (5.01 sec)

然后在session1 中 查看show processlist;
MySQL中如何淺析interactive_timeout和wait_timeout
分析
    交互式 timeout時(shí)間受global級(jí)別的interactive_timeout影響。
2)非交互模式
  目前的測(cè)試并沒(méi)有達(dá)到預(yù)期,測(cè)試模型如下設(shè)置

  1. mysql> select variable_name,variable_value from information_schema.session_variables where variable_name in ('interactive_timeout','wait_timeout');

  2.   +---------------------+----------------+

  3.   | variable_name       | variable_value |

  4.   +---------------------+----------------+

  5.   | INTERACTIVE_TIMEOUT | 35             |

  6.   | WAIT_TIMEOUT        | 35             |

  7.   +---------------------+----------------+

  8.   2 rows in set (0.00 sec)

  9.   mysql> select variable_name,variable_value from information_schema.global_variables where variable_name in ('interactive_timeout','wait_timeout');

  10.   +---------------------+----------------+

  11.   | variable_name       | variable_value |

  12.   +---------------------+----------------+

  13.   | INTERACTIVE_TIMEOUT | 35             |

  14.   | WAIT_TIMEOUT        | 25             |

  15.   +---------------------+----------------+

  16.   2 rows in set (0.00 sec)

在python命令行中模擬非交互數(shù)據(jù)來(lái)訪問(wèn)數(shù)據(jù)庫(kù),查看數(shù)據(jù)庫(kù)timeout參數(shù)。同時(shí)在數(shù)據(jù)庫(kù)中執(zhí)行show processlist 查看python的連接多久會(huì)被關(guān)閉。
MySQL中如何淺析interactive_timeout和wait_timeout
查看session級(jí)別的參數(shù)
MySQL中如何淺析interactive_timeout和wait_timeout
查看show processlist,通過(guò)python程序連接數(shù)據(jù)庫(kù)的會(huì)話等待了25s之后,被中斷。
MySQL中如何淺析interactive_timeout和wait_timeout
分析
1 通過(guò)python 命令行獲取的timeout 參數(shù)和交互方式獲取的并不一致,在交互命令行中獲取session級(jí)別的wait_timeout 的值為35,使用非交互命令獲取的值為25,說(shuō)明wait_timeout繼承全局的wait_timeout。
2 交互模式下會(huì)話空閑時(shí)間超過(guò)wait_timeout立即會(huì)被斷開(kāi)。

3) 思考題
  session1 通過(guò)非交互命令連接到db,此時(shí)全局的wait_timeout的值是28800,session 2 修改全局的wait_timeout 為30s ,問(wèn)題 session1的會(huì)話會(huì)受到影響嗎?

三 總結(jié)
 1 timeout 只是針對(duì)空閑會(huì)話有影響。
 2 session級(jí)別的wait_timeout繼承g(shù)lobal級(jí)別的interactive_timeout的值。而global級(jí)別的session則不受interactive_timeout的影響。
 3 交互式會(huì)話的timeout時(shí)間受global級(jí)別的interactive_timeout影響。因此要修改非交互模式下的timeout,必須同時(shí)修改interactive_timeout的值。
 4 非交互模式下,wait_timeout參數(shù)繼承g(shù)lobal級(jí)別的wait_timeout。

以上就是MySQL中如何淺析interactive_timeout和wait_timeout,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當(dāng)前文章:MySQL中如何淺析interactive_timeout和wait_timeout
網(wǎng)站URL:http://aaarwkj.com/article10/pcdpgo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、網(wǎng)站內(nèi)鏈、網(wǎng)站制作、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
女人的天堂亚洲的天堂欧美| 国产亚洲一区二区精品| 女同久久精品国产精品天堂99| 亚洲欧美日韩国产一区| 国产成人免费公开视频| 99久久成人精品国产片| 日产精品一级二级三级爱| 亚洲天堂人妻一区二区| 精品人妻av中文字幕| 人妻熟女在线一区二区| 亚洲国产熟女导航网站视频| 久久精品国产亚洲av亚| 日韩视频在线不卡观看| 成人欧美一区二区三区av| 男女互射视频在线观看| 亚洲国产成人91精品| 久久国产精品午夜亚洲欧美| 日本啪啪啪一区二区三区| 亚洲欧美中文日韩二区一区| 日韩在线视频观看一区二区三区| 青青操国产在线自偷自拍| 97国产免费全部免费观看| 亚洲日本韩国在线免费| av 一区二区三区av| 欧美日韩黄色人人小视频| 亚洲av区一区二区三| 亚洲精品日韩在线欧美| 男人的天堂av免费看看| 少妇高潮毛片免费看高潮| 国产精品18禁一区二区三区| 国产男女做爰在线视频| 在线观看国产小视频不卡| 日本中文字幕有码专区| 国产极品美女视频福利| 日本高清一区二区高清| 99精品热视频在线观看| 久久久亚洲福利精品午夜 | 日韩欧美亚洲自拍另类| 区二区三区毛片乱码免费| 日本av一区二区在线| av影片在线观看不卡|