主頁 > 知識(shí)庫 > 史上最簡單的MySQL數(shù)據(jù)備份與還原教程(下)(三十七)

史上最簡單的MySQL數(shù)據(jù)備份與還原教程(下)(三十七)

熱門標(biāo)簽:龍圖酒吧地圖標(biāo)注 怎么辦理400電話呢 怎么申請(qǐng)400電話申請(qǐng) 好搜地圖標(biāo)注 百度地圖標(biāo)注地方備注 電話機(jī)器人免費(fèi)嗎 地圖標(biāo)注圖標(biāo)素材入駐 電銷機(jī)器人價(jià)格多少錢一臺(tái) 400電話申請(qǐng)什么好

數(shù)據(jù)備份與還原第三篇,具體如下

基礎(chǔ)概念:

備份,將當(dāng)前已有的數(shù)據(jù)或記錄另存一份;

還原,將數(shù)據(jù)恢復(fù)到備份時(shí)的狀態(tài)。

為什么要進(jìn)行數(shù)據(jù)的備份與還原?

防止數(shù)據(jù)丟失;

保護(hù)數(shù)據(jù)記錄。

數(shù)據(jù)備份與還原的方式有很多種,具體可以分為:數(shù)據(jù)表備份、單表數(shù)據(jù)備份、SQL備份和增量備份。

SQL 備份

SQL 備份,備份的是 SQL 語句。在進(jìn)行 SQL 備份的時(shí)候,系統(tǒng)會(huì)對(duì)表結(jié)構(gòu)以及數(shù)據(jù)進(jìn)行處理,變成相應(yīng)的 SQL 語句,然后執(zhí)行備份。在還原的時(shí)候,只要執(zhí)行備份的 SQL 語句即可,此種備份方式主要是針對(duì)表結(jié)構(gòu)。

不過,MySQL 并沒有提供 SQL 備份的指令,如果我們想要進(jìn)行 SQL 備份,則需要利用 MySQL 提供的軟件mysqldump.exe,而且mysqldump.exe也是一種客戶端,因此在操作服務(wù)器的時(shí)候,必須進(jìn)行認(rèn)證。

基本語法:mysqldump.exe -hPup + 數(shù)據(jù)庫名字 + [表名1 + [表名2]] > 備份文件目錄

其中,-hPup分別表示

h:IP 或者localhost;

P:端口號(hào);

u:用戶名;

p:密碼。

由于mysqldump.exe也是客戶端,因此想執(zhí)行上述命令,我們需要先退出 MySQL 客戶端,然后在命令行窗口執(zhí)行如下命令:

mysqldump.exe -uroot -pbin.guo test class > D:/CoderLife/testMySQL/classSQL.sql

如上圖所示,雖然mysqldump給出了警告(在命令行中輸入密碼是不安全的),但是我們輸入的命令已經(jīng)成功執(zhí)行啦!在這里,如果執(zhí)行上述命令不成功的話,很有可能是我們沒有配置環(huán)境變量的問題。

如上圖所示,在testMySQL目錄下,已經(jīng)生產(chǎn)了對(duì)表class的 SQL 備份,至于 SQL 備份的內(nèi)容到底是什么,我們可以打開classSQL.sql文件進(jìn)行查看:

如上圖所示,通過 SQL 備份的文件,包含了各種 SQL 語句,如創(chuàng)建表的語句以及插入數(shù)據(jù)的語句等等。

此外,在上面給出的執(zhí)行 SQL 備份的基本語法中,我們可以看到表名都用[]括了起來,這表示可選項(xiàng),如果不輸入表名,則默認(rèn)備份整個(gè)數(shù)據(jù)庫。執(zhí)行過程和上面一樣,因此我們就不予演示啦!

接下來,我們演示通過 SQL 備份的文件還原數(shù)據(jù),有兩種方式:

方式 1:使用mysql.exe客戶端還原數(shù)據(jù)

基本語法mysql.exe/mysql -hPup 數(shù)據(jù)庫名稱 + 數(shù)據(jù)庫名字 + [表名1 + [表名2]] 備份文件目錄

在命令行窗口執(zhí)行如下命令,進(jìn)行測試:

-- 登錄 MySQL 客戶端
mysql -uroot -p

-- 輸入密碼,切換數(shù)據(jù)庫
use test;

-- 刪除表 class 中的數(shù)據(jù)
delete from class;

-- 退出數(shù)據(jù)庫
\q

-- 通過 SQL 備份的文件還原數(shù)據(jù)
mysql -uroot -pbin.guo test  D:/CoderLife/testMySQL/classSQL.sql

如上圖所示,上述命令全部執(zhí)行成功。下面,我們檢查還原結(jié)果,

如上圖所示,顯然表class的數(shù)據(jù)在刪除之后,我們通過 SQL 備份的文件還原了數(shù)據(jù)。

方式 2:使用 SQL 命令還原數(shù)據(jù)

基本語法source + 備份文件目錄;

執(zhí)行如上 SQL 語句,進(jìn)行測試:

-- 查看表 class 數(shù)據(jù)
select * from class;

-- 刪除表 class 數(shù)據(jù)
delete from class;

-- 查看表 class 數(shù)據(jù)
select * from class;

-- 通過 SQL 備份的文件還原數(shù)據(jù)
source D:/CoderLife/testMySQL/classSQL.sql;

-- 查看表 class 數(shù)據(jù)
select * from class;


如上圖所示,顯然表class的數(shù)據(jù)在刪除之后,我們通過 SQL 備份的文件利用第二種方式還原了數(shù)據(jù)。

通過上面的學(xué)習(xí)及測試,我們可以知道 SQL 備份的優(yōu)缺點(diǎn):

優(yōu)點(diǎn):可以備份表結(jié)構(gòu);缺點(diǎn):增加額外的 SQL 命令,會(huì)浪費(fèi)磁盤空間。

增量備份

增量備份,不是針對(duì)數(shù)據(jù)或者 SQL 進(jìn)行備份,而是針對(duì) MySQL 服務(wù)器的日志進(jìn)行備份,其日志內(nèi)容包括了我們對(duì)數(shù)據(jù)庫的各種操作的歷史記錄,如增刪改查等。此外,增量備份是指定時(shí)間段進(jìn)行備份,因此備份的數(shù)據(jù)一般不會(huì)出現(xiàn)重復(fù)的情況,常用于大型項(xiàng)目的數(shù)據(jù)備份。在此,我們就不詳細(xì)的進(jìn)行介紹了,至于這部分的內(nèi)容,以后會(huì)單獨(dú)寫一篇關(guān)于如何進(jìn)行增量備份的博文。

溫馨提示:符號(hào)[]括起來的內(nèi)容,表示可選項(xiàng);符號(hào)+,則表示連接的意思。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 史上最簡單的MySQL數(shù)據(jù)備份與還原教程(上)(三十五)
  • 史上最簡單的MySQL數(shù)據(jù)備份與還原教程(中)(三十六)
  • 詳解MySQL數(shù)據(jù)備份之mysqldump使用方法
  • Linux下實(shí)現(xiàn)MySQL數(shù)據(jù)備份和恢復(fù)的命令使用全攻略
  • 通過實(shí)例學(xué)習(xí)MySQL分區(qū)表原理及常用操作

標(biāo)簽:汕尾 內(nèi)江 撫順 廣西 浙江 溫州 固原 防疫工作

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《史上最簡單的MySQL數(shù)據(jù)備份與還原教程(下)(三十七)》,本文關(guān)鍵詞  史上,最簡單,的,MySQL,數(shù)據(jù)備份,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《史上最簡單的MySQL數(shù)據(jù)備份與還原教程(下)(三十七)》相關(guān)的同類信息!
  • 本頁收集關(guān)于史上最簡單的MySQL數(shù)據(jù)備份與還原教程(下)(三十七)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章