pt-online-schema-change工作過程介紹
pt-online-schema-change是Percona-toolkit的一員,透過改進原生ddl的方式,達到不鎖表線上修改表結構。
工作過程如下:
1.建立一個和要執行 alter 操作的表一樣的新的空表結構(是alter之前的結構)
2.在新表執行alter table 語句(速度應該很快)
3.在原表中建立觸發器3個觸發器分別對應insert,update,delete操作
4.以一定塊大小從原表複製資料到臨時表,複製過程中透過原表上的觸發器在原表進行的寫操作都會更新到新建的臨時表
5.Rename 原表到old表中,在把臨時表Rename為原表
6.如果有參考該表的外來鍵,根據alter-foreign-keys-method引數的值,檢測外來鍵相關的表,做相應設定的處理
7.最後將舊原表以及原表上的觸發器刪除
工作過程如下:
1.建立一個和要執行 alter 操作的表一樣的新的空表結構(是alter之前的結構)
2.在新表執行alter table 語句(速度應該很快)
3.在原表中建立觸發器3個觸發器分別對應insert,update,delete操作
4.以一定塊大小從原表複製資料到臨時表,複製過程中透過原表上的觸發器在原表進行的寫操作都會更新到新建的臨時表
5.Rename 原表到old表中,在把臨時表Rename為原表
6.如果有參考該表的外來鍵,根據alter-foreign-keys-method引數的值,檢測外來鍵相關的表,做相應設定的處理
7.最後將舊原表以及原表上的觸發器刪除
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2152042/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL資料寫入過程介紹MySql
- WSL 2 的安裝過程(以及介紹)
- Java 物件初始化的過程介紹Java物件
- 課程介紹
- OAuth 2.0以及它的工作過程工作過程OAuth
- OpenGL Android課程六:介紹紋理過濾Android
- vue每時每刻-專案介紹-搭建過程Vue
- MySQL-09-mysql 儲存過程入門介紹MySql儲存過程
- 介紹GitOps的工作原理Git
- SAP工作流介紹之ABAP Business Workflow介紹
- HanLP封裝為web services服務的過程介紹HanLP封裝Web
- ET介紹——CSharp協程CSharp
- linux環境下安裝mysql8.0過程介紹GMFXLinuxMySql
- 1、Camunda工作流-介紹
- 軟工作業-個人介紹軟工
- LVS - 相關介紹、工作模式和排程演算法的說明模式演算法
- CDN基本工作過程 (轉)
- Qt混合Python開發技術:Python介紹、混合過程和DemoQTPython
- 簡單介紹Oracle 19c RAC 手工建庫的過程Oracle
- 「Git」常用工作流介紹Git
- 用於找工作的自我介紹
- Fiddler(1)基本介紹以及工作原理
- MacPorts打包過程簡介Mac
- 編譯過程簡介編譯
- APP安全檢測 滲透測試APP服務介紹與過程APP
- Linux運維學習過程中,磁碟的磁軌簡單介紹Linux運維
- 基於SAML2.0的SAP雲產品Identity Authentication過程介紹IDE
- day0-準備工作: 工具介紹
- 輪換代理IP的工作原理介紹
- 磁軌排程演算法介紹演算法
- OpenGL Android課程五:介紹混合(Blending)Android
- k8s排程器介紹(排程框架版本)K8S框架
- servlet的生命週期和工作原理介紹Servlet
- CLR的GC工作模式介紹(Workstation和Server)GC模式Server
- 最新的.NET 熱過載介紹
- mysql 匯入匯出資料庫以及函式、儲存過程的介紹MySql資料庫函式儲存過程
- Activiti配置工作流結束過程
- python中try語句的工作過程Python