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

MySQL數據庫備份的基礎知識

編輯:關於MYSQL數據庫

    一、數據備份捷徑

    因為這個方法沒有得到官方正式文檔的驗證,我們暫稱為試驗吧。

    目的:備份hostA主機中一個MySQL數據庫備份TestA,並恢復到到hostB機中

    試驗環境:

    操作系統:WinNT4.0,Mysql3.22.34,phpMyAdmin 2.1.0

    在hostA中安裝MySQL數據庫備份並建立TestA數據庫

    hostB機安裝MySQL數據庫備份,沒有TestA數據庫

    方法步驟:

    啟動phpMyAdmin察看HostA和HostB中的數據庫列表,在HostB中沒有TestA數據庫

    找到HostA中MySQL數據庫備份的安裝目錄,並找到數據庫目錄data

    在我的試驗環境中,這個目錄是C:/mysql/data

    找到對應數據庫名稱的子目錄C:/mysql/data/TestA

    粘貼拷貝到HostB的Data目錄下,是HostA同HostB MySQL數據庫備份數據目錄下的文件相同

    刷新HostB的phpMyAdmin察看一下數據庫列表,我們看到TestA已經出現,並且作查詢修改等操作都正常,備份恢復恢復成功

    試驗結論:MySQL的數據庫可以通過文件形式保存,備份,恢復只要將相應文件目錄恢復即可,無需使用其它工具備份。

    二、正規的方法(官方建議):

    導出要用到MySQL數據庫備份的mysqldump工具,基本用法是:

    mysqldump [OPTIONS] database [tables]

    如果你不給定任何表,整個數據庫將被導出。

    通過執行mysqldump --help,你能得到你mysqldump的版本支持的選項表。

    注意,如果你運行mysqldump沒有--quick或--opt選項,mysqldump將在導出結果前裝載整個結果集到內存中,如果你正在導出一個大的數據庫,這將可能是一個問題。

    mysqldump支持下列選項:

    --add-locks

    在每個表導出之前增加LOCK TABLES並且之後UNLOCK TABLE。(為了使得更快地插入到MySQL數據庫備份)。

    --add-drop-table

    在每個create語句之前增加一個drop table。

    --allow-keywords

    允許創建是關鍵詞的列名字。這由在列名前面加表名的方法做到。

    -c, --complete-insert

    使用完整的insert語句(用列名字)。

    -C, --compress

    如果客戶和服務器均支持壓縮,壓縮兩者間所有的信息。

    --delayed

    用INSERT DELAYED命令插入行。

    -e, --extended-insert

    使用全新多行INSERT語法。(給出更緊縮並且更快的插入語句)

    -#, --debug[=option_string]

    跟蹤程序的使用(為了調試)。

    --help

    顯示一條幫助消息並且退出。


    --fields-terminated-by=...

    --fields-enclosed-by=...

    --fields-optionally-enclosed-by=...

    --fields-escaped-by=...

    --fields-terminated-by=...

    這些選擇與-T選擇一起使用,並且有相應的LOAD DATA INFILE子句相同的含義。

    LOAD DATA INFILE語法。

    -F, --flush-logs

    在開始導出前,洗掉在MySQL數據庫備份服務器中的日志文件。

    -f, --force,

     

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