Mysql備份命令Mysqldump導入、導出以及壓縮成zip、gz格式


可以創建一個只有本地備份權限的用戶:

CREATE USER 'backuser'@'localhost' IDENTIFIED BY '********';
GRANT SELECT, RELOAD, PROCESS, SHOW DATABASES, LOCK TABLES ON *.* TO 'backuser'@'localhost';

1、導出

命令:mysqldump -u用戶名 -p數據庫密碼 數據庫名 > 文件名

如果用戶名需要密碼,則需要在此命令執行后輸入一次密碼核對;如果數據庫用戶名不需要密碼,則不要加“-p”參數,導入的時候相同。注意輸入的用戶名需要擁有對應數據庫的操作權限,否則無法導出數據。由於是作系統維護和全部數據庫的導出,一般我們使用root等超級用戶權限。

比如要將abc這個數據庫導出為一個文件名為db_abc.sql的數據庫文件到當前目錄下,則輸入下面的命令:

mysqldump -uroot -ppassword abc >db_abc.sql

如果要直接導出sql.zip或者gzip格式文件命令如下:

mysqldump -uroot -ppassword abc | gzip > db_abc.sql.tar.gz

需要注意的是:-u和-p后面直接跟用戶名和密碼,不要有空格。

2、導入

命令:mysql -u用戶名 -p數據庫密碼 數據庫名 < 文件名

同mysqldump命令一樣的用法,各參數的意義同mysqldump。

比如我們要將/root/backup/db_abc.sql這個文件的數據導入到abc數據庫中,則使用下面的命令:

mysql -uroot -ppassword abc < /root/backup/db_abc.sql

如果是zip或gzip格式則使用下面的命令:

gunzip < /root/backup/abc.sql.tar.gz | mysql -uroot -ppassword abc

3、其他命令參考

備份遠程MySQL數據庫的命令
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql

備份MySQL數據庫為帶刪除表的格式備份MySQL數據庫為帶刪除表的格式,能夠讓該備份覆蓋已有數據庫而不需要手動刪除原有數據庫。
mysqldump ---add-drop-table -uusername -ppassword databasename > backupfile.sql

直接將MySQL數據庫壓縮備份
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz

備份MySQL數據庫某個(些)表
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql

同時備份多個MySQL數據庫
mysqldump -hhostname -uusername -ppassword --databases databasename1 databasename2 databasename3 > multibackupfile.sql

僅僅備份數據庫結構
mysqldump --no-data --databases databasename1 databasename2 databasename3 > structurebackupfile.sql

備份服務器上所有數據庫
mysqldump --all-databases allbackupfile.sql

還原MySQL數據庫的命令
mysql -hhostname -uusername -ppassword databasename < backupfile.sql

還原壓縮的MySQL數據庫
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename

將數據庫轉移到新服務器

1、首先在新的服務器上創建數據庫,create database newdatabase;
2、mysqldump -uusername -ppassword olddatabasename | mysql -hhostname -uuserbname –ppassword newdatabasename

4、總結一下壓縮備份

備份並用gzip壓縮:mysqldump < mysqldump options> | gzip > outputfile.sql.gz
從gzip備份恢復:gunzip < outputfile.sql.gz | mysql < mysql options>
備份並用bzip壓縮:mysqldump < mysqldump options> | bzip2 > outputfile.sql.bz2
從bzip2備份恢復:bunzip2 < outputfile.sql.bz2 | mysql < mysql options>

 

轉自:https://catdeacon.com/note/683.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM