程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 簡單的MySQL備份與還原方法分享

簡單的MySQL備份與還原方法分享

編輯:關於MYSQL數據庫

為了安全起見,需要經常對數據庫作備份,或者還原。對於 MySQL 而言,最方便的方法可能就是用 phpMyAdmin 的導出、導入功能了,但如果你的數據庫體積比較大,作為 Web 應用的 phpMyAdmin 可能會遭遇“超時”而操作失敗。所以,學會在命令行模式下備份、還原數據庫,還是很有必要的。

Linux系統下
備份數據庫

在 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的文件。

當然,如果數據庫體積比較大,通常會對備份出來的文件進行壓縮,備份和壓縮可以在同一行命令內完成:

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

壓縮的時候,最好再給文件名加上擴展名.gz,以便下次還原數據庫的時候心中有數。
還原數據庫

還原數據庫的命令也很簡單,如果你備份出來的文件是未壓縮的版本,則還原數據庫的命令如下:

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 程序以便還原。

如不考慮將 .sql 文件壓縮打包的話,也可以用下面兩條語句分別導出、導入

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

Windows系統下
備份

開始菜單 | 運行 | cmd |利用“cd /Program Files/MySQL/MySQL Server 5.0/bin”命令進入bin文件夾 | 利用“mysqldump  -u 用戶名 -p databasename >exportfilename”導出數據庫到文件,如mysqldump -u root -p voice>voice.sql,然後輸入密碼即可開始導出。 
 
還原
進入MySQL Command Line Client,輸入密碼,進入到“mysql>”,輸入命令"show databases;",回車,看看有些什麼數據庫;建立你要還原的數據庫,輸入"create database voice;",回車;切換到剛建立的數據庫,輸入"use voice;",回車;導入數據,輸入"source voice.sql;",回車,開始導入,再次出現"mysql>"並且沒有提示錯誤即還原成功。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved