mysqldump 屬於數據庫邏輯備份程序,通常使用它來對一個或多個 MySQL 數據庫進行備份或還原,另外還可以將數據庫傳輸給其他的 MySQL 服務器。下面良許小編就將Linux mysqldump命令的用法進行詳述,希望對大家有所幫助。
在使用 mysldump 來備份數據庫表時,必須要求該賬戶擁有 SELECT 權限,SHOW VIEW 權限用於備份視圖,TRIGGER 權限用於備份觸發器。
注意,其他的命令選項可能還需要擁有更多的權限才能完成。
由於 mysqldump 需要通過重建 SQL 語句來實現備份功能,對於數據量比較大的數據庫備份與還原操作,速度都比較慢,因此 mysqldump 不適用於大數據的備份。當打開 mysqldump 備份文件時,備份文件的內容就是數據庫的 SQL 語言重現。對於大數據的備份與還原,通常會選擇物理備份,即直接復制數據文件,就可以實現快速的數據還原工作。
使用 mysqldump 可以備份數據庫中的數據表,也可以備份整個數據庫,還可以備份 MySQL 系統中的所有數據庫。對於使用 mysqldump 工具備份的數據庫文件,可以使用 mysql 命令工具還原數據。
注意,在備份整個數據庫時,不能在數據庫后使用數據表的名稱。
mysqldump 命令的語法格式如下:
[root@liangxu ~]# mysqldump [選項] db_name [table_name]
[root@liangxu ~]# mysqldump [選項] --databases db_name …
[root@liangxu ~]# mysqldump [選項] --all-databases
mysqldump 中的常用選項可以通過 [mysqldump] 和 [client] 寫入配置文件。mysqldump 命令的常用選項及說明如表 1 所示。
表 1 mysqldump命令的常用選項及說明
選 項 | 說 明 |
---|---|
--add-drop-database | 在備份文件中添加、刪除相同數據庫的 SQL 語句 |
--add-drop-table | 在備份文件中添加、刪除相同數據表的 SQL 語句 |
--add-drop-trigger | 在備份文件中添加、刪除相同觸發器的 SQL 語句 |
--add-locks | 在備份數據表前后添加表鎖定與解鎖 SQL 語句 |
--all-databases | 備份所有數據庫中的數據表 |
--apply-slave-statements | 在 CHANGE MASTER 前添加 STOP SLAVE 語句 |
--bind-address=ip_address | 使用指定的網絡接口連接 MySQL 服務器 |
--comments | 添加備份文件的注釋 |
--create-options | 在 CREATE TABLE 語句中包含所有的 MySQL 特性 |
--databases | 備份指定的數據庫 |
--debug | 創建 debugging 日志 |
--default-character-set=charsename | 設置默認字符集 |
--host,-h | 設置需要連接的主機 |
--ignore-table | 設置不需要備份的數據表,該選項可以使用多次 |
--lock-all-tables | 設置全局鎖,鎖定所有的數據表以保證備份數據的完整性 |
--no-create-db,-n | 只導出數據而不創建數據庫 |
--no-create-info | 只導出數據而不創建數據表 |
--no-date | 不備份數據內容,用於備份表結構 |
--password,-p | 還用密碼連接服務器 |
--port=port_num | 使用指定端口號連接服務器 |
--replace | 使用 REPLACE 語句代替 INSERT 語句 |
mysqldump工具的使用方法如下:
- 備份所有的數據庫,如下所示:
[root@liangxu ~]# mysqldump -u root -p --all-databases > all database sql
Enter password:
- 備份 mysql 數據庫下的 user 數據包,如下所示:
[root@liangxu ~]# mysqldump -u root -p myaql user > user_table
Enter password:
- 使用 all_database_sql 數據庫備份文件還原數據庫,如下所示:
[root@liangxu ~]# mysql -u root -p myaql < all-database_sql
Enter password:
- 使用 user_table 數據庫備份文件還原數據表,如下所示:
[root@liangxu ~]# mysql -u root -p myaql < user_table
Enter password:
注意,所有的備份和還原操作都必須在輸入命令后,輸入密碼。
以上就是良許教程網為各位朋友分享的Linux mysqldump命令的用法。
本文由博客一文多發平台 OpenWrite 發布!