程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 敕令行形式下備份、復原 MySQL 數據庫的語句小結

敕令行形式下備份、復原 MySQL 數據庫的語句小結

編輯:MySQL綜合教程

敕令行形式下備份、復原 MySQL 數據庫的語句小結。本站提示廣大學習愛好者:(敕令行形式下備份、復原 MySQL 數據庫的語句小結)文章只能為提供參考,不一定能成為您想要的結果。以下是敕令行形式下備份、復原 MySQL 數據庫的語句小結正文


為了平安起見,須要常常對數據庫作備份,或許復原。關於 MySQL 而言,最便利的辦法能夠就是用 phpMyAdmin 的導出、導入功效了,但假如你的數據庫體積比擬年夜,作為 Web 運用的 phpMyAdmin 能夠會遭受“超時”而操作掉敗。所以,學會在敕令行形式下備份、復原數據庫,照樣很有需要的。

1、備份數據庫
在 Linux 敕令行形式下備份 MySQL 數據庫,用的是 mysqldump 敕令:


mysqldump -u mysqluser -p test_db


對以上敕令稍作說明:

•-u 意味著你要指定一個 MySQL 用戶名來銜接數據庫辦事,如下面的 mysqluser 即為 MySQL用戶名。
•-p 則意味著你須要有一個有用的,與以上用戶名對應的暗碼。
•最初一個參數則是須要備份的誰人數據庫的稱號:test_db

假如直接履行以上敕令,緊接著就會提醒須要輸出 MySQL 暗碼,數據暗碼後,它會直接將備份出來的 SQL 劇本顯示在屏幕上,這固然不是我們想要的成果。我們須要把數據庫備份成一個文件,可用以下敕令:

mysqldump -u mysqluser -p test_db > test_db.sql

如許,就會在以後目次下備份出一個名為test_db.sql的文件。

固然,假如數據庫體積比擬年夜,平日會對備份出來的文件停止緊縮,備份和緊縮可以在統一行敕令內完成:

mysqldump -u mysqluser -p test_db | gzip > test_db.sql.gz

緊縮的時刻,最好再給文件名加上擴大名.gz,以便下次復原數據庫的時刻心中稀有。

2、復原數據庫
復原數據庫的敕令也很簡略,假如你備份出來的文件是未緊縮的版本,則復原數據庫的敕令以下:

cat test_db.sql | mysql -u mysqluser -p test_db

用cat敕令,把 SQL 劇本內容輸入給 MySQL 法式以便復原。可以看到,MySQL 前面的幾個參數,跟備份時刻的一樣。

假如是已緊縮版本的備份文件,則需用以下敕令能力復原:

gunzip < test_db.sql.gz | mysql -u mysqluser -p test_db

相似地,用gunzip敕令,解緊縮,然後把劇本內容輸入給 MySQL 法式以便復原。

2012-10-08 update:

如不斟酌將 .sql 文件緊縮打包的話,也能夠用上面兩條語句分離導出、導入。

mysqldump -u root -p test_db > test_db.sql
mysql -u root -p test_db < test_db.sql


備份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

將數據庫轉移到新辦事器

mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved