MySQL數據庫的備份與數據恢復_第1頁
MySQL數據庫的備份與數據恢復_第2頁
MySQL數據庫的備份與數據恢復_第3頁
MySQL數據庫的備份與數據恢復_第4頁
MySQL數據庫的備份與數據恢復_第5頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

MySQL數據庫的備份與數據恢復點擊添加文本點擊添加文本點擊添加文本點擊添加文本MySQL數據庫備份及恢復完全備份直接拷貝數據庫文件mysqldump程序mysqlhotcopy程序phpmyadmin完全備份——直接拷貝數據庫文件1.找到數據庫文件的存放位置。注:CentOS下MySQL數據庫的地址可在/etc/myf文件中找到。注:*.frm是描述了表的結構,*.MYD保存了表的數據記錄,*.MYI是表的索引MyISAM引擎的數據備份完全備份——直接拷貝數據庫文件2.停止mysql效勞器或給要拷貝的表上鎖,為保持數據一致性。命令:locktables表名read3.拷貝數據表,例如拷貝db.frm、db.MYD、db.MYI文件4.解鎖,釋放資源。命令:unlocktables恢復數據——直接拷貝數據庫文件方法:將*.frm、*.MYD、*.MYI文件拷貝到存放數據庫文件的目錄下。1.找到放置數據的數據庫目錄。2.將*.frm、*.MYD、*.MYI文件拷貝到該目錄下,并將這三個文件的用戶屬性以及用戶組屬性都改成mysql。MyISAM引擎的數據恢復InnoDB引擎的數據備份完全備份與恢復——直接拷貝數據庫文件拷貝*.opt,*.frm,*.ibd,ibdata1,ib_logfile*文件。

InnoDB引擎的數據恢復將*.opt,*.frm,*.ibd文件復制到數據庫文件夾test下,將ibdata1復制到../test下刪除../test下的ib_logfile*文件,重新啟動mysql效勞器。完全備份——mysqldump程序有3種方式來調用mysqldump程序:1.備份一個數據庫或一張表,語法如下: mysqldump[選項]數據庫名[表名]2.同時備份多個數據庫,語法如下: mysqldump[選項]---database數據庫1[數據庫2數據庫3...]3.備份效勞器上所有的數據庫,語法如下: mysqldump[選項]--all--databasemysqldump客戶端可用來轉儲數據庫或搜集數據庫進行備份或將數據轉移到另一個SQL效勞器(不一定是一個MySQL效勞器)。轉儲包含創立表和/或裝載表的SQL語句。完全備份——mysqldump程序例如數據備份的命令:mysqldump

-hhost-uusername

-ppassword

db_name

>

backupfile.sql鎖表參數:--lock-all-tables,-x

在開始導出之前,提交請求鎖定所有數據庫中的所有表,以保證數據的一致性。這是一個全局讀鎖,并且自動關閉--single-transaction和--lock-tables選項。

--lock-tables

它和--lock-all-tables類似,不過是鎖定當前導出的數據表,而不是一下子鎖定全部庫下的表。本選項只適用于MyISAM表,如果是Innodb表可以用--single-transaction選項。

--single-transaction

該選項在導出數據之前提交一個BEGINSQL語句,BEGIN不會阻塞任何應用程序且能保證導出時數據庫的一致性狀態。它只適用于事務表,例如InnoDB和BDB。遠程效勞器數據備份1.在遠程數據庫上添加可以訪問該數據的用戶名及ip地址。命令:grant權限on

數據庫名.*to‘數據庫賬戶名’@‘IP地址’identifiedby‘密碼’withgrantoption;2.開啟效勞器mysql的端口號訪問權限或禁用防火墻。假設本地mysql的端口號與遠程效勞器mysql的端口號不一致,那么需要在備份命令中再添加“-P遠程效勞器mysql端口號”這一選項。mysqldump本機備份命令例子mysqldump遠程備份命令例子完全備份——mysqldump程序自動備份mysql數據庫1.先創立一個數據庫備份目錄mkdirmysqlbackupcdmysqlbackup2.創立備份腳本

vimysqlautobackup.sh

3.編寫腳本:

4.將腳本設置為可執行權限chmod+xmysqlautobackup.sh

5.設定定期備份

crontab-e

0001***/path/mysqlbackup/mysqlautobackup.sh6.啟動cron效勞/sbin/servicecrondstart數據恢復——mysqldump程序命令:mysql-hhost–uusername–pdb_name</path/backup-file.sqlgunzip

<

/path/backupfile.sql.gz

|

mysql

-uusername

-ppassword

db_name或mysql–uusername–p–e“source/path/backup-file.sql”db_name

等同于msyql>source/path/backup-file.sqlmysql–uusername–p–e“source/path/backup-file.sql”db_name的恢復例子假設出現左邊的錯誤“ERROR1049(42000):Unknowndatabase‘test’”,那么說明數據庫中沒有該數據庫,在數據庫效勞器上新建test數據庫,重新執行恢復命令即可。數據庫中的user表已經恢復完全備份與恢復——mysqlhotcopy程序mysqlhotcopy是一個Perl腳本,最初由TimBunce編寫并提供。它使用LOCKTABLES、FLUSHTABLES和cp或scp來快速備份數據庫。mysqlhotcopy對使用場合有一定限制,它只能運行在數據庫目錄所在的機器上,并且只能用于備份MyISAM數據庫。mysqlhotcopy使用的根本語法如下:備份數據庫:mysqlhotcopy–umysql用戶名–p密碼數據庫名稱/備份目錄/備份多個數據庫:mysqlhotcopy–umysql用戶名–p密碼數據庫名稱1數據庫名稱2…/備份目錄/備份名稱/備份數據庫中的一張表:mysqlhotcopy–umysql用戶名–p密碼數據庫名稱./表名*/備份目錄/恢復數據:將備份數據拷貝到源目錄下,重啟mysql即可恢復數據。完全備份——PHPMyadmin安裝PHPMyadmin:1.到官網上

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論