




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
備份與恢復
本章介紹確保數據庫可靠性的基本概念和操作技術,重點講授數據庫的備份和故障恢復方法,包括數據庫備份方法(簡單備份和完全備份)和事務日志在數據庫故障恢復中的作用。2第一節數據庫故障的種類數據庫故障的種類:事務故障:事務運行過程中非正常中止。系統故障:系統運行過程中停止,內存數據丟失,外存數據未受影響。介質故障:硬件等故障,導致外存儲器數據丟失。計算機病毒:人為破壞計算機正常工作的特殊程序
如果數據庫中只包含成功事務提交的結果,稱數據庫處于一致狀態。如果數據庫在運行中發生故障,使一些事務被迫中斷,它們對數據庫的修改有一部分已寫入物理數據庫,則稱數據庫處于不一致狀態。3數據庫故障恢復的基本原理:
利用后備副本將數據庫恢復到轉儲時的一致狀態。
利用運行記錄(事務日志)將數據庫恢復到故障前事務成功提交時的一致狀態。
數據庫恢復操作涉及后備副本和事務日志兩個基本概念。4
備份(Backup)是指將數據庫轉儲到磁帶或另一個磁盤上保存起來的過程。這些備份文件稱為后備副本或后援副本。一旦發生介質故障,數據庫遭到破壞,重新裝入后備副本可以將數據庫恢復到轉儲時刻的一致狀態。第二節
數據備份(轉儲)5一、數據庫備份的分類物理備份冷備份(脫機備份)熱備份(聯機備份)邏輯備份完全備份增量備份6二、應用mysqldump命令備份數據庫mysqldump是MySQL自帶的邏輯備份工具。mysqldump的工作原理:查出創建表的結構定義信息,在文本文件中生成一個創建表的CREATETABLE語句;將表中所有數據轉換成INSERT語句。當數據庫恢復時,執行CREATETABLE語句創建表,再執行INSERT語句在表中插入數據,就可以還原數據庫。7二、應用mysqldump命令備份數據庫命令的基本語法格式:mysqldump–uroot-p[密碼][數據庫名]>/目錄/備份文件名.sql例7.1備份school數據庫。在命令提示符窗口,鍵入:mysqldump-uroot-pschool>C:\mytestdb\schoolback.sql運行環境說明(已經介紹)8
如果沒有設置path路徑,需要運行cd命令切換到bin子目錄,在命令提示符窗口輸入下列2行命令:切換到bin目錄下cdC:\ProgramFiles\MySQL\MySQLServer8.0\bin執行mysqldump命令(或叫應用程序)mysqldump-uroot-pschool>C:\mytestdb\schoolback2.sql9Mysqldump具有多種備份功能(1)備份所有數據庫mysqldump–uroot-p--all-databases>/備份路徑/備份文件名(2)備份多個數據庫(多個數據庫以空格間隔)mysqldump–uroot-p--databasesdb1db2db3>/備份路徑/備份文件名(3)備份指定數據庫中指定的表(多個表以空格間隔)mysqldump-uroot-p數據庫名表名1表名2...>/備份路徑/備份文件名10第三節事務日志
一、事務日志的基本概念事務日志記錄對數據庫的所有更新操作,也稱為運行記錄。事務日志是保證事務原子性的一種方法,它記載了每一個事務在執行過程中對數據庫所做的更新狀態。在事務運行過程中,DBMS將事務的每一個更新操作登記在日志文件中。11一、事務日志的基本概念
事務日志一般包括下列3個內容。(1)事務的開始標記(STARTTRANSACTION);(2)事務的結束狀態(COMMIT或ROLLBACK);(3)事務的更新操作更新的數據對象、更新前的值(前像)、更新后的值(后像)。12
例7.2銀行轉賬事務T,將A賬戶上的100元轉入B賬戶,設賬戶余額為變量V,事務的更新操作及事務日志中記錄的內容。數據庫恢復中使用事務日志的原理。
如果系統崩潰,查閱上述日志文件的記錄,根據A和B的前像就可以將數據庫恢復到事務T初始的一致狀態;同樣,根據A和B的后像就可以將數據庫恢復到事務T成功提交時的一致狀態。1314二、MySQL的日志文件日志文件是MySQL數據庫的重要組成部分和特色。MySQL運用日志文件記錄了數據庫運行中各種狀態信息,用于數據庫故障恢復、數據庫系統性能優化、主從架構數據庫的同步運行等任務,確保數據庫的可靠性。15二、MySQL有七種日志文件序號日志名稱內容和用途1重做日志(redolog)保存數據頁最后一次提交時的一致性狀態,最新值。2回滾日志(undolog)保存事務更新前的初始值,事務回滾的前像值(舊值)。3二進制日志(binlog)以"事件"的形式保存數據庫改變的事件信息。4錯誤日志(errorlog)保存服務器啟動、停止和運行中發生的錯誤。5慢查詢日志(slowquerylog)保存執行超過指定時間的查詢語句。6一般查詢日志(generallog)保存服務器接收到的所有查詢或命令。7中繼日志(relaylog)主從架構中復制主服務器二進制日志到本地稱中繼日志說明:MySQL的重做日志、回滾日志和二進制日志文件與事務操作相關。16用于數據庫恢復的三種日志文件:1.重做日志文件:存儲格式是物理日志,存儲事務對物理數據頁修改后的新數據,可將數據庫的物理數據頁恢復到最后一次提交時的一致狀態,確保事務的持久性。2.回滾日志文件:記錄數據的邏輯變化,如INSERT語句對應DELETE。用于事務故障恢復,將事務回滾到初始的一致性狀態,確保事務的原子性。3.二進制日志文件:以"事件"的形式保存引起或可能引起數據庫改變的事件信息(不包括select和show之類的查詢語句),包括事件的起始、結束時間、位置、更新操作等信息。174.二進制日志文件的相關操作命令(1)查看二進制日志信息命令SHOWVARIABLESLIKE'log_bin%’;
18(2)查看二進制文件命令
SHOWBINARYlogs;19(3)查看當前數據庫binarylog的位置和文件名。
復制文件名和位置代碼,用于數據庫的恢復。
showmasterstatus;
20(4)暫停和重啟二進制日志命令SETSQL_LOG_BIN=0;//暫停二進制日志SETSQL_LOG_BIN=1;//重啟二進制日志(5)刪除二進制日志命令RESETMASTER;
刪除所有binlog文件,創建新的日志文件,僅用于主服務器復位或初始化。21(6)刷新當前日志文件,生成新的日志文件flushlogs;
假設當前日志文件(ZYX2022-bin.000025),關閉該文件,開啟新的日志文件(ZYX2022-bin.000026)。22
第四節MySQL的增量備份MySQL通過開啟二進制日志(binlog)間接實現增量備份。二進制日志對備份的意義如下:(1)二進制日志保存了所有更新或者可能更新數據的操作。(2)二進制日志在啟動MySQL服務器后開始記錄,并在文件達到所設大小或者收到flushlogs命令后重新創建新的日志文件。(3)只需定時執行flushlogs重新創建新的日志,生成二進制文件序列,并及時把這些文件保存到一個安全的地方,即完成了一個時間段的增量備份。(4)在mysql啟動時,通過命令行或配置文件決定是否開啟binlog,系統變量log_bin=ON為binlog(二進制日志)開啟狀態,能夠進行增量備份;log_bin=OFF表示binlog關閉狀態,如果要進行增量備份需要開啟binlog。23一、檢查二進制日志是否開啟24二、增量備份(結合例7.3)①③②④25
第五節
數據庫的恢復
將數據庫從某種故障狀態恢復到正確狀態的處理過程稱為數據庫恢復。數據庫的可恢復性是保證事務持久性的重要措施。數據庫的基本恢復方法有以下兩種:簡單恢復模型是以后援副本為基礎的恢復方法。完全恢復模型是以后援副本和事務日志為基礎的恢復方法。26一、簡單恢復模型簡單恢復模型是以后援副本為基礎的恢復方法。這種恢復模型的優點是減少事務日志占用的存儲空間,缺點是丟失最后一次轉儲至發生故障期間的所有數據庫的更新操作。27二、使用MySQL命令恢復備份文件在§7.2.2節使用mysqldump命令將數據庫中的數據備份成一個文本文件。利用備份文件恢復數據庫的命令格式:mysql–uroot-pdatabase數據庫名<備份文件路徑和文件名>在命令提示符窗口,輸入創建同名數據庫的命令。2、在命令提示符窗口輸入下列命令,導入備份文件的數據。28三、完全恢復模型
當數據庫出現故障時,首先利用后援副本將數據庫恢復到轉儲時的一致狀態,然后再利用事務日志將數據庫恢復到故障之前的一致性狀態。
當數據庫發生故障時,可能一些事務對數據庫的某些更新已經寫入磁盤,而這些事務的另一些更新尚未寫入磁盤。此時,事務的執行狀態就不滿足原子性,且數據庫可能處于不一致狀態。DBMS的恢復子系統將根據事務日志的記載重做(REDO)已提交的事務,撤消(UNDO)未提交的事務,確保事務的原子性,使數據庫恢復到某個一致狀態。這種恢復的方法也稱為REDO/UNDO恢復策略。29四、MySQL使用二進制日志恢復數據庫MySQL支持完全恢復模型,用二進制日志恢復數據庫的方法。例7.5模擬使用二進制日志恢復數據庫實驗。1、COMP_DB數據庫中,創建職工表,插入1條記錄。2、關閉二進制日志,刪除職工表。302、查看二進制日志是否開啟和當前二進制日志文件。s
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽省合肥市包河區48中學2025屆七年級英語第二學期期中綜合測試模擬試題含答案
- 山東省樂陵市第一中學2025屆八下英語期中復習檢測試題含答案
- 2025-2030中國金屬鈣行業市場發展分析及發展趨勢與投資方向研究報告
- 2025-2030中國花椒行業市場發展分析及發展趨勢與投資方向研究報告
- 2025-2030中國網絡分配器行業發展趨勢及發展前景研究報告
- 2025-2030中國智能酸奶機行業市場發展趨勢與前景展望戰略研究報告
- 解析出租車駕駛員行業的工作特性與制度構建
- 節能減排背景下的數據中心冷卻技術探討
- 談判技巧與策略的實戰案例
- 2024年注冊會計師財務成本管理歷年真題試題與答案后附試題解析
- GB/T 21835-2008焊接鋼管尺寸及單位長度重量
- GB/T 17554.1-2006識別卡測試方法第1部分:一般特性測試
- 泛微協同辦公平臺e-cology8.0后臺維護手冊流程引擎
- 全國“創新杯”電類專業說課大賽課件一等獎作品:電動機連續控制電路教學設計方案
- D-22 瀝青混合料穩定度試驗記錄(馬歇爾試驗)0
- 領導科學正式完整版課件
- 安徽省工傷職工停工留薪期分類目錄
- 《寵物美容與護理》全套教學課件
- 高中政治《 科學立法》教學設計
- 異丁醇(2-甲基-1-丙醇、2-甲基丙醇)的理化性質及危險特性表
- (完整word)a3標準規范試卷模板
評論
0/150
提交評論