mysqldump是sql級別的備份機制,它將資料表導成sql指令碼檔案,是非常常用的備份方法。
下面整理了mysqldump的用法和幾個常用引數。
基本用法:
mysqldump -u使用者名稱 -p密碼 -h主機 資料庫 表 > 檔名
如果想匯出整個庫,不加表名即可。
例:
mysqldump -uroot -h10.1.153.23 achievement black > black.dump
常用選項:
1. --all-databases
匯出所有資料庫
例:
mysqldump -uroot -h10.1.153.23 --all-databases > all.dump
2. --default-character-set=name
設定預設字符集
匯入匯出時最好都加上這個選項,我就遇到過在不同版本的mysql
間導資料,因為沒有加此選,匯入時提示
sql有語法錯誤的情況。
例:
mysqldump -uroot -h10.1.153.23 --default-character-set=utf8 achievement black > black.dump
3. --complete-insert
匯出的資料採用包含欄位名的完整insert
方式。例:
如果在不加該選項時,匯出資料中的一條是如下形式:
insert into `category` values (1,'動作','2012-07-20 04:12:23');
加了該選項後,此資料在dump
檔案中的形式如下:
insert into `category` (`id`, `name`, `ctime`) values (1,'動作','2012-07-20 04:12:23');
可能的應用場景:
將a庫中
category
表的資料匯入
b庫,但b庫的
category
表新加了
validate
字段。此時,a
庫的category
表在mysqldump
時如果不加
--complete-insert
選項則無法匯入b庫
category
表,會提示列數不同的錯誤。
4. --no-create-info
只匯出資料,而不新增create table語句
5. --where
按where
條件匯出資料
例:
mysqldump -uroot -h10.1.153.22 hao_game category --where "validate=2"
只匯出validate為2
的資料。
6. --no-data
只匯出建表語句,不導資料。
利用mysqldump備份資料庫
在 執行 中輸入cmd進入命令列,然後進入mysql的bin目錄下,執行 mysqldump h localhost uusername ppassword databasename filename 例如 mysqldump h localhost uroot proot mydb d mydb....
mysqldump備份資料
mysqldump輸出的資料檔案有兩種形式 如果帶了 tab選項,mysqldump會為每張表建立兩個檔案,乙個是以tab間隔的文字檔案包含表的內容資料,字尾是.txt 乙個是表的建立語句,表示資料庫表的結構,sql檔案。兩個檔名與表名相同。如果不帶 tab選項,那麼mysqldump直接輸出.sq...
Mysql命令mysqldump 備份資料庫
mysqldump命令用來備份資料庫。mysqldump命令在dos的 url file mysql bin mysql bin url 目錄下執行。1 匯出整個資料庫 匯出檔案預設是存在mysql bin目錄下 mysqldump u 使用者名稱 p 資料庫名 匯出的檔名 mysqldump u ...