前言
本篇博客所有代碼可以在文章最後看到。。。
1. 單表數據備份
每次只能備份一張表,只能備份數據,不能備份表結構。
使用於將數據導出到外部文件。
導出數據:
數據庫數據:
導出命令:
發現導出失敗,大致意思是出於安全因素,有個辦法是修改配置文件(百度)。
這裏不修改配置文件,使用支持的目錄:
再次執行:
查看:
其他編輯器能夠看到換行:
記事本無法看到:
可以看到,數據雖然有分割,但是不利於查看,所以單表備份還支持選項:
- Fields:字段處理
enclosed by:字段內容用什麼包裹,默認是空
terminated by:字段以什麼結束,默認是tab鍵
escaped by:特殊符號用什麼處理,默認是\ 轉義 - Lines:行處理
starting by:每行記錄以什麼開頭,默認空
terminated by:每行以什麼結束,默認’\r\n’,換行
查看數據:
導入數據:
導出的格式是什麼樣,導入就應該用什麼格式:
查詢:
2. SQL數據備份
與數據備份不同,sql備份能夠備份sql語句。
MySQL客戶端並不支持SQL備份,需要用到mysql提供的軟件mysqldump.exe 。
mysqldump 也是一種客戶端,也需要連接認證。
SQL導出:
語法如下:
test2-數據庫,choose2-數據表
(如果想要備份整個數據庫,只需要寫數據庫名即可)
查看:
SQL還原數據:
方式1:
刪除表:
導入:
查看:
方式2:
3. 軟件備份
這裏舉例Navicat 軟件。。。
右鍵表:
導出嚮導:
代碼
# 1. 單表數據備份
select * into outfile 'D:/junior2/code/mianshi/choose.txt' from choose;
select * into outfile
'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/choose.txt'
from choose;
select * into outfile
'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/choose2.txt'
fields
enclosed by '"'
terminated by '|'
lines
starting by 'start:'
from choose;
create table choose2 like choose;
load data infile
'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/choose2.txt'
into table choose2
fields
enclosed by '"'
terminated by '|'
lines
starting by 'start:';
# 2. SQL數據備份
mysqldump -uroot -p test2 choose2 > C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/choose2.sql
mysqldump -uroot -p test2 choose2 > D:/junior2/code/mianshi/choose2.sql
mysql -uroot -p test2 < D:/junior2/code/mianshi/choose2.sql
source D:/junior2/code/mianshi/choose2.sql