一:命令格式.
mysqldump ? -u用戶名 -p 源庫名 >路徑/xxx.sql ? ? # 此命令是在linux 終端上運(yùn)行.
二:實(shí)戰(zhàn)演練.
1.創(chuàng)建一個(gè)目錄.
tarena@tedu:~/study/tarena$ mkdir 20180729
tarena@tedu:~/study/tarena/20180729$ pwd
/home/tarena/study/tarena/20180729
2.備份china庫;
tarena@tedu:~/study/tarena/20180729$ mysqldump -u root -p china > /home/tarena/study/tarena/20180729/china.sql
Enter password:
ls
tarena@tedu:~/study/tarena/20180729$ vi china.sql ?#查看備份的文件.
3.刪除china庫驗(yàn)證.(注意,如果是在生產(chǎn)環(huán)境,刪除庫是要命的!:绺!)
mysql> drop database china;
mysql> show databases;
mysql> create database china default charset=utf8;
mysql> use china;
Database changed
mysql> show tables;
Empty set (0.00 sec)
4.恢復(fù)庫.(在Linux終端操作)
tarena@tedu:~/study/tarena/20180729$ mysql -u root -p china < /home/tarena/study/tarena/20180729/china.sql
Enter password:
5.然后在查看庫.
mysql> show tables;
+-----------------+
| Tables_in_china |
+-----------------+
| city? ? ? ? ? ? |
| sheng? ? ? ? ? |
| t888? ? ? ? ? ? |
| xian? ? ? ? ? ? |
+-----------------+
4 rows in set (0.00 sec)
以上信息表明挠乳,庫已經(jīng)成功恢復(fù).
三 瓣赂,補(bǔ)充信息.
--all-databases???? 備份所有的庫
? ? ? ?庫名??????????????? 備份單個(gè)庫
? ?-B庫1 庫2 ...????? 備份多個(gè)庫
? 庫名表1 表2 ...??? 備份指定庫的指定表 ?(庫與庫之間李命,表與表之間有空格)
四 ?注意事項(xiàng).(在生產(chǎn)環(huán)境侄非,操作需要謹(jǐn)慎蕉汪,清楚自己在做什么!以及命令的影響范圍)
1逞怨、恢復(fù)數(shù)據(jù)庫時(shí)如果恢復(fù)到原有庫會(huì)將表中數(shù)據(jù)覆蓋
? ? 者疤,新增的表不會(huì)被
2、在恢復(fù)時(shí)如果要恢復(fù)的庫不存在叠赦,則先要?jiǎng)?chuàng)建空庫