<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        [MySQLFAQ]系列—如何安全地關閉MySQL實例

        來源:懂視網 責編:小采 時間:2020-11-09 12:55:07
        文檔

        [MySQLFAQ]系列—如何安全地關閉MySQL實例

        [MySQLFAQ]系列—如何安全地關閉MySQL實例:本文分析了mysqld進程關閉的過程,以及如何安全、緩和地關閉MySQL實例,對這個過程不甚清楚的同學可以參考下。 關閉過程: 1、發起shutdown,發出 SIGTERM信號 2、有必要的話,新建一個關閉線程(shutdown thread) 如果是客戶端發起的關閉,則會新建一個專
        推薦度:
        導讀[MySQLFAQ]系列—如何安全地關閉MySQL實例:本文分析了mysqld進程關閉的過程,以及如何安全、緩和地關閉MySQL實例,對這個過程不甚清楚的同學可以參考下。 關閉過程: 1、發起shutdown,發出 SIGTERM信號 2、有必要的話,新建一個關閉線程(shutdown thread) 如果是客戶端發起的關閉,則會新建一個專

        本文分析了mysqld進程關閉的過程,以及如何安全、緩和地關閉MySQL實例,對這個過程不甚清楚的同學可以參考下。 關閉過程: 1、發起shutdown,發出 SIGTERM信號 2、有必要的話,新建一個關閉線程(shutdown thread) 如果是客戶端發起的關閉,則會新建一個專用

        本文分析了mysqld進程關閉的過程,以及如何安全、緩和地關閉MySQL實例,對這個過程不甚清楚的同學可以參考下。

        關閉過程:
      1. 1、發起shutdown,,發出 SIGTERM信號
      2. 2、有必要的話,新建一個關閉線程(shutdown thread)
      3. 如果是客戶端發起的關閉,則會新建一個專用的關閉線程

        如果是直接收到 SIGTERM 信號進行關閉的話,專門負責信號處理的線程就會負責關閉工作,或者新建一個獨立的線程負責這個事

        當無法創建獨立的關閉線程時(例如內存不足),MySQL Server會發出類似下面的告警信息:

        Error: Can’t create thread to kill server

      4. 3、MySQL Server不再響應新的連接請求
      5. 關閉TCP/IP網絡監聽,關閉Unix Socket等渠道

      6. 4、逐漸關閉當前的連接、事務
      7. 空閑連接,將立刻被終止;

        當前還有事務、SQL活動的連接,會將其標識為 killed,并定期檢查其狀態,以便下次檢查時將其關閉;(參考 KILL 語法)

        當前有活躍事務的,該事物會被回滾,如果該事務中還修改了非事務表,則已經修改的數據無法回滾,可能只會完成部分變更;

        如果是Master/Slave復制場景里的Master,則對復制線程的處理過程和普通線程也是一樣的;

        如果是Master/Slave復制場景里的Slave,則會依次關閉IO、SQL線程,如果這2個線程當前是活躍的,則也會加上 killed 標識,然后再關閉;

        Slave服務器上,SQL線程是允許直接停止當前的SQL操作的(為了避免復制問題),然后再關閉該線程;

        在MySQl 5.0.80及以前的版本里,如果SQL線程當時正好執行一個事務到中間,該事務會回滾;從5.0.81開始,則會等待所有的操作結束,除非用戶發起KILL操作。

        當Slave的SQL線程對非事務表執行操作時被強制 KILL了,可能會導致Master、Slave數據不一致;

      8. 5、MySQL Server進程關閉所有線程,關閉所有存儲引擎;
      9. 刷新所有表cache,關閉所有打開的表;

        每個存儲引擎各自負責相關的關閉操作,例如MyISAM會刷新所有等待寫入的操作;InnoDB會將buffer pool刷新到磁盤中(從MySQL 5.0.5開始,如果innodb_fast_shutdown不設置為 2 的話),把當前的LSN記錄到表空間中,然后關閉所有的內部線程。

      10. 6、MySQL Server進程退出
      11. 關于KILL指令

        從5.0開始,KILL 支持指定 CONNECTION | QUERY兩種可選項:

      12. KILL CONNECTION和原來的一樣,停止回滾事務,關閉該線程連接,釋放相關資源;
      13. KILL QUERY則只停止線程當前提交執行的操作,其他的保持不變;
      14. 提交KILL操作后,該線程上會設置一個特殊的 kill標記位。通常需要一段時間后才能真正關閉線程,因為kill標記位只在特定的情況下才檢查:

        安全關閉MySQL幾點建議

        想要安全關閉 mysqld 服務進程,建議按照下面的步驟來進行:

        啰嗦那么多,其實正常情況下執行 mysqladmin shutdown 就夠了,如果發生阻塞,再參考上面的內容進行分析和解決吧,哈哈:)

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        [MySQLFAQ]系列—如何安全地關閉MySQL實例

        [MySQLFAQ]系列—如何安全地關閉MySQL實例:本文分析了mysqld進程關閉的過程,以及如何安全、緩和地關閉MySQL實例,對這個過程不甚清楚的同學可以參考下。 關閉過程: 1、發起shutdown,發出 SIGTERM信號 2、有必要的話,新建一個關閉線程(shutdown thread) 如果是客戶端發起的關閉,則會新建一個專
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 西西人体免费视频| 美女视频黄频a免费| a级毛片高清免费视频| 亚洲毛片网址在线观看中文字幕| 亚洲av乱码一区二区三区按摩| 成人免费AA片在线观看| 亚洲AV成人影视在线观看 | 最近更新免费中文字幕大全| 亚洲欧洲精品成人久久奇米网 | 99999久久久久久亚洲| 成人AV免费网址在线观看| 亚洲中文字幕精品久久| 国产一精品一AV一免费孕妇| 亚洲最大无码中文字幕| 国产精品成人无码免费| 一级毛片aa高清免费观看| 亚洲精品国产精品乱码在线观看 | 4399好看日本在线电影免费| 亚洲二区在线视频| 黄网址在线永久免费观看 | 亚洲中文字幕久久精品蜜桃| 四虎永久免费观看| 三根一起会坏掉的好痛免费三级全黄的视频在线观看 | 一区二区三区在线免费| 亚洲成AV人片在线观看无码 | 亚洲日本一区二区三区在线 | 好大好深好猛好爽视频免费| 羞羞网站在线免费观看| 亚洲国产精品无码久久SM| 黄+色+性+人免费| 国内成人精品亚洲日本语音 | 免费视频成人国产精品网站| 久久精品国产亚洲精品| 免费视频成人片在线观看| 亚洲人成无码网站在线观看| www亚洲精品少妇裸乳一区二区 | 国产在亚洲线视频观看| 久久亚洲精品AB无码播放| 在线观看无码的免费网站| 中文在线免费不卡视频| 亚洲乱码无人区卡1卡2卡3|