Mysql學習系列 -- 資料庫的備份與還原
阿新 • • 發佈:2019-01-11
背景:伺服器上經常需要進行資料庫的備份以還原,備份經常通過定時任務完成,當資料庫出現問題時利用備庫進行一個數據庫的還原。
本次只是進行資料庫備份以及還原命令的學習,具體如下所示。
一、資料庫備份
資料庫的備份命令是mysqldump
1、備份一個數據庫:
mysqldump -h localhost -u root -p123456 www > d:\www2018-4-26.sql #www為資料庫名
2、備份MySQL資料庫為帶刪除表的格式
備份MySQL資料庫為帶刪除表的格式,能夠讓該備份覆蓋已有資料庫而不需要手動刪除原有資料庫。mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql
3、資料庫壓縮備份
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz
4、備份MySQL資料庫某個(些)表mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
5、同時備份多個MySQL資料庫6、僅僅備份資料庫結構mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
7、備份伺服器上所有資料庫mysqldump –all-databases > allbackupfile.sql
8、將資料庫轉移到新伺服器
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
二、匯入資料庫
資料庫的匯入有三種方式:source命令、mysql、gunzip命令
(1)source 命令
進入mysql資料庫控制檯,mysql -u root -p
mysql>use 資料庫
然後使用source命令,後面引數為指令碼檔案(如這裡用到的.sql)mysql>source /home/work/db/bkdb.sql
(2)mysql
mysql -hhostname -uusername -ppassword databasename < backupfile.sql
(3)gunzipgunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename