利用mysqldump備份資料庫

2021-06-07 21:24:26 字數 1703 閱讀 5643

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 ...