mysqldump備份時如何保持資料的一致性
mysqldump對不同型別的儲存引擎,內部實現也不一樣。主要是針對兩種型別的儲存引擎:支援事務的儲存引擎(如InnoDB)和不支援事務的儲存引擎(如MyISAM),下面分別看看這兩種儲存引擎的實現:
1、對於支援事務的引擎如InnoDB,引數上是在備份的時候加上--single-transaction保證資料一致性
--single-transaction實際上透過做了下面兩個操作:
1).在開始的時候把該session的事務隔離級別設定成repeatable read;
2).然後啟動一個事務(執行begin),備份結束的時候結束該事務(執行commit)
有了這兩個操作,在備份過程中,該session讀到的資料都是啟動備份時的資料(同一個點)。可以理解為對於innodb引擎來說加了該引數,備份開始時就已經把要備份的資料定下來了,備份過程中的提交的事務時是看不到的,也不會備份進去。
1、對於支援事務的引擎如InnoDB,引數上是在備份的時候加上--single-transaction保證資料一致性
--single-transaction實際上透過做了下面兩個操作:
1).在開始的時候把該session的事務隔離級別設定成repeatable read;
2).然後啟動一個事務(執行begin),備份結束的時候結束該事務(執行commit)
有了這兩個操作,在備份過程中,該session讀到的資料都是啟動備份時的資料(同一個點)。可以理解為對於innodb引擎來說加了該引數,備份開始時就已經把要備份的資料定下來了,備份過程中的提交的事務時是看不到的,也不會備份進去。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2156092/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysqldump備份時的資料一致性問題--single-transactionMySql
- mysqldump 資料庫備份程式MySql資料庫
- mysql 備份資料庫 mysqldumpMySql資料庫
- mysqldump 進行資料備份MySql
- MySQLDump的備份方法MySql
- Mysqldump的備份流程MySql
- Mysql備份和還原資料庫-mysqldumpMySql資料庫
- mysqldump來備份MYSQL資料庫(指令碼)MySql資料庫指令碼
- mysqldump如何只備份表結構MySql
- 使用Mysqldump備份和恢復MySQL資料庫MySql資料庫
- Linux基礎命令---mysqldump資料庫備份LinuxMySql資料庫
- 資料庫一致性備份資料庫
- 什麼是備份資料庫?什麼是資料庫一致性備份和非一致性備份?資料庫
- Redis和MySQL如何保持資料一致性?RedisMySql
- 【mysqldump】mysqldump及備份恢復示例MySql
- mysqldump備份技巧分享MySql
- mysqldump 備份指令碼MySql指令碼
- mysqldump備份指令碼MySql指令碼
- 邏輯備份--mysqldumpMySql
- 詳解MySQL資料備份之mysqldump使用方法MySql
- 使用mysqldump進行mysql資料庫備份還原MySql資料庫
- mysqldump使用方法(MySQL資料庫的備份與恢復)MySql資料庫
- MySQL資料庫mysqldump命令備份異常的一個案例MySql資料庫
- 簡單的mysqldump備份(windows)MySqlWindows
- Mysqldump備份說明及資料庫備份指令碼分享-運維筆記MySql資料庫指令碼運維筆記
- 資料庫非一致性備份資料庫
- windows mysqldump備份指令碼WindowsMySql指令碼
- mysqldump備份原理解析MySql
- mysql 邏輯備份 (mysqldump)MySql
- Mysqldump備份的基本流程介紹MySql
- mysqldump備份不輸入密碼直接備份MySql密碼
- Mysqldump 在備庫進行備份時會阻塞備庫的sql_threadMySqlthread
- mysql 匯入 mysqldump 備份得資料保 gone away錯誤MySqlGo
- 網站資料定時備份指令碼分享 (保留最近的30份備份資料)網站指令碼
- MySQL 5.5 mysqldump備份說明MySql
- mysqldump常用備份恢復方法MySql
- mysql的常用備份工具:mysqldump和mysqlhotcopyMySql
- mysqldump 備份匯出資料排除某張表或多張表MySql