好运时时彩注册_好运时时彩官网_好运时时彩

MySQL 資料庫的備份與復原




華奕資訊


備份MySQL資料庫主要有兩個方法,一是將資料庫目錄完整打包備份:二是使用 MySQL 內建指令 mysqldump。

如何備份資料庫目錄?
MYSQL預設目錄路徑:在 /var/lib/mysql

如果 MySQL 正在運作,請先使用指令將記憶體中的暫存寫入硬碟並停止 MySQL,這樣做的好處是不用擔心會有資料未完全寫入,而且 MySQL也不會鎖住正在使用中的資料庫檔案。

指令:

# sync;sync;sync
# /etc/rc.d/init.d/mysqld stop
# cd /var/lib/mysql/
# tar zcvf testdb_backup.tar.gz testdb
# /etc/rc.d/init.d/mysqld start

以上指令會先將記憶體暫存寫入磁碟並停止 MySQL系統,然後把 testdb 資料庫製作一個 tar.gz 壓縮檔的備份,並儲存到 testdb_backup.tar.gz。

備註:
使用不同版本的linux 作業系統路徑可能會不相同。

假設資料庫發生錯誤而需要復原資料,則可使用以下指令恢復:

# etc/rc.d/init.d/mysqld stop
# cd /var/lib/mysql/
# mv testdb mytest_old
# tar zxvf testdb_backup.tar.gz
# /etc/rc.d/init.d/mysqld start

以上指令是先停用mysql後將有問題的資料庫 testdb 改名為testdb_old,然後將原先製作的備份檔解壓縮到 /var/lib/mysql/testdb,最後啟動mysql。

備註:
使用壓縮備份的方法簡單,但在備份及復原時均需要停止 MySQL 的運作,然而實際操作這樣方式的備份與復原,如果移到不同版本的MYSQL SERVER 則不一定能成功復原。

mysqldump
mysqldump 是採用SQL級別的備份機制,將資料表導成SQL 語法文件,用在不同的 MySQL 版本之間最為合適,這也是大家最常用的備份方法。

範例:

mysqldump -u root -p testdb >/backup/testdb.sql

以上指令是將 testdb 備份到 /backup/testdb.sql,在輸入指令後,系統會要求您輸入 MySQL 的 root 密碼。

mysqldump 如何復原?

mysql -u root -p testdb </backup/testdb.sql

以上指令會將 /backup/testdb.sql 備份檔復原到 testdb 。
如果想要備份mysql 整個資料庫該怎做?

指令:

mysqldump -u root -p --all-databases >/backup/mysql.sql

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

返回首页