溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql數(shù)據(jù)庫備份恢復講析

發(fā)布時間:2020-04-30 14:45:14 來源:億速云 閱讀:238 作者:三月 欄目:MySQL數(shù)據(jù)庫

下文主要給大家?guī)?a title="Mysql" target="_blank" href="http://www.kemok4.com/mysql/">Mysql數(shù)據(jù)庫備份恢復講析,希望Mysql數(shù)據(jù)庫備份恢復講析能夠帶給大家實際用處,這也是我編輯這篇文章的主要目的。好了,廢話不多說,大家直接看下文吧。

數(shù)據(jù)庫備份的重要性,在生產(chǎn)環(huán)境中,數(shù)據(jù)的安全性是至關重要的,任何數(shù)據(jù)的丟失都可能產(chǎn)生嚴重的后果,數(shù)據(jù)庫備份,能及時的恢復重要數(shù)據(jù)。
造成數(shù)據(jù)丟失的原因:
  • 程序錯誤
  • 人為錯誤
  • 計算機失敗
  • 磁盤失敗
  • 災難(火災、地震)偷竊、
從物理與邏輯的角度,備份可分為物理備份和邏輯備份。
  1. 邏輯備份:指對數(shù)據(jù)庫邏輯組件(如表、數(shù)據(jù)庫)的備份。
  2. 物理備份:對數(shù)據(jù)庫操作系統(tǒng)的物理文件(數(shù)據(jù)文件、日志文件)的備份。物理備份又可以分為冷備份和熱備份。
冷備份:在關閉數(shù)據(jù)庫時進行的備份操作,能較好的保證數(shù)據(jù)庫的完整性。
熱備份:數(shù)據(jù)庫運行狀態(tài)時的備份,備份方法依賴于數(shù)據(jù)庫的日志文件。
備份又可分為完全備份、差異備份和增量備份。
  1. 完整備份:對整個數(shù)據(jù)庫所有對象進行備份,花費時間長。
  2. 差異備份:完全備份和增量備份之后的備份。(只識別完整備份,備份之后的)
  3. 增量備份:只針對備份后面修改的內(nèi)容進行備份。(只備份完整備份之后增加的那一條。)
  4. Mysql數(shù)據(jù)庫備份恢復講析
一.使用tar打包文件夾備份。

1.數(shù)據(jù)庫文件很大,可以使用壓縮率較大的XZ格式壓縮,優(yōu)先安裝XZ壓縮工具

yum install xz -y

2.對數(shù)據(jù)庫文件夾/usr/local/mysql/data/進行打包操作

tar Jcvf /opt/mysql-$(date +%F).tar.xz /usr/local/mysql/data 

3.如果數(shù)據(jù)庫文件損壞丟失,可以解壓壓縮備份文件,做數(shù)據(jù)恢復工作。

tar Jxvf /opt/mysql-2018-8-30.tar.xz /usr/local/mysql/data
二、使用mysqldump工具備份。

1.對單個庫進行完整備份。

mysqldump -u 用戶名 -p[密碼] --database[數(shù)據(jù)庫] > /備份路徑/備份文件名

例:

mysqldump -uroot -pabc123 --database school > /opt/school.sql

2.對某些表進行完全備份。

mysqldump -u用戶名 -p[密碼][數(shù)據(jù)庫名][表名]>/備份路徑/備份文件名

3.對多個庫進行完全備份。

mysqldump -u用戶名 -p[密碼] --databases [庫名1][庫名2] >/備份路徑/備份文件名

4.對所有庫進行完全備份。

mysqldump -u用戶名 -p[密碼] --all-databases >/備份路徑/備份文件名

5.只備份某個表的表結構。

mysqldump -u用戶名 -p[密碼] -d [庫名][表名]>/備份路徑/備份文件名
三、恢復數(shù)據(jù)庫

1.登陸數(shù)據(jù)庫后,進入數(shù)據(jù)庫用source命令直接進行整庫恢復。

source 備份腳本路徑

例:

source /opt/school.sql

注意:創(chuàng)建新的數(shù)據(jù)庫,進入新數(shù)據(jù)庫中執(zhí)行source命令 。

2.用mysql命令恢復。(不登錄數(shù)據(jù)庫的情況下)

mysql -u用戶名 -p[密碼] 庫名 < /庫備份路徑/備份文件

有2個例子說一下,第一種只備份了表,需要提前創(chuàng)建新庫,再恢復,第二種無需提前創(chuàng)建新庫。

例:

1)第一種

先備份

mysqldump -uroot -pabc123 school>/opt/school.sql

創(chuàng)建新庫,查看新庫的信息。

mysql -uroot -pabc123 -e 'create database school;show databases;'

Mysql數(shù)據(jù)庫備份恢復講析

恢復

mysql -uroot -pabc123 school < /opt/school.sql

2)第二種

備份

mysqldump -uroot -pabc123 --databases school > school.sql

無需提前創(chuàng)建新庫

恢復

mysql -uroot -pabc123 school < school.sql

三、無需登錄數(shù)據(jù)庫進行查看、創(chuàng)建數(shù)據(jù)庫、表

mysql -u 用戶名 -p[密碼] -e '[命令];[命令];'

school;show databases;'

對于以上關于Mysql數(shù)據(jù)庫備份恢復講析,大家是不是覺得非常有幫助。如果需要了解更多內(nèi)容,請繼續(xù)關注我們的行業(yè)資訊,相信你會喜歡上這些內(nèi)容的。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI