mysql關閉過程
mysql關閉過程:
1 開始關閉
如果是客戶端關閉的會,會建立一個shutdown的執行緒,如果是收到一個SIGTERM訊號,那麼他本身就是shutdown執行緒,也有可能建立一個。如果建立執行緒不能成功(例如,記憶體不足),會寫一個錯誤日誌Error: Can't create thread to kill server
2 不再接受新的連線。
3 中止當前的活動連線
終止當前已經連線上的連線,並標記為killed。空連線很快斷掉,正在執行語句的連線,週期性的檢查他們。開啟事務的連線,回滾事務(如果是一個非事務引擎更新或插入多行,可能會部分成功,部分不成功)。 如果是主伺服器,把從服務上的連線當做一般的連線對待。如果是從伺服器,先關閉IO和sql執行緒,再把別的客戶執行緒標記為killed。sql執行緒允許完成當前的語句(避免主從問題)再停止 。如果sql執行緒執行到事務的一半,那麼會接著執行(除非使用kill)。非事務表不能被回滾
4 關閉服務或關閉儲存引擎
flush表快取,並且關閉開啟的表。 每種儲存引擎執行必要的操作,如innodb 會flush buffer pool到檔案上(除非innodb_fast_shutdown=2),寫當前的LSN到表空間,並且中止自己的內部執行緒。對於MYisam 重新整理索引寫
5 服務退出
from 官方文件
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25099483/viewspace-1482159/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE關閉過程淺析Oracle
- Oracle RAC+ASM 關閉全過程OracleASM
- oracle資料庫的關閉過程Oracle資料庫
- Oracle10g RAC開啟關閉過程Oracle
- Oracle 資料庫例項啟動關閉過程Oracle資料庫
- Linux 啟動過程, 初始化和關閉(轉)Linux
- MySQL全面瓦解16:儲存過程相關MySql儲存過程
- MySQL儲存過程詳解 mysql 儲存過程MySql儲存過程
- oracle資料庫的啟動與關閉過程詳解Oracle資料庫
- Mysql加鎖過程詳解(3)-關於mysql 幻讀理解MySql
- Mysql加鎖過程詳解(2)-關於mysql 幻讀理解MySql
- MySQL儲存過程詳解 mysql 儲存過程linkMySql儲存過程
- 求救:jdbc與mysql透過Servlet操作後連線關閉不了JDBCMySqlServlet
- MySQL的session過程MySqlSession
- MySQL Order BY 排序過程MySql排序
- MySQL恢復過程MySql
- mysql 儲存過程MySql儲存過程
- MySQL5.7關閉NUMA方法MySql
- vps mysql自動關閉MySql
- mysql的啟動和關閉MySql
- 【Mysql】Mysql儲存過程學習MySql儲存過程
- MySql儲存過程—2、第一個MySql儲存過程的建立MySql儲存過程
- MySQL冷備份過程MySql
- mysql儲存過程整理MySql儲存過程
- MySQL過程和遊標MySql
- MySQL之儲存過程MySql儲存過程
- [MYSQL -23儲存過程]MySql儲存過程
- MySQL 事務提交過程MySql
- MYSQL儲存過程管理MySql儲存過程
- mysql儲存過程例子MySql儲存過程
- mysql的儲存過程MySql儲存過程
- MySQL---------儲存過程MySql儲存過程
- mysql 儲存過程和事件排程MySql儲存過程事件
- mysql事件關閉解決辦法MySql事件
- MySQL Windows下關閉和啟動MySqlWindows
- mysql 關於大資料量日誌表的優化過程MySql大資料優化
- MySQL SELECT list is not in...MySQL關閉嚴格模式MySql模式
- MySQL MHA詳細搭建過程MySql