如何備份 mysql database

有一句是說:「你一星期想備份你的資料多少次,是要看資料對你有多重要」,機器上的 mysql 資料庫,隨著逐漸被我塞入一堆 blog 等等資料,是考慮要做定期備份的時候了,雖然我覺得 Server 出問題的機會不太,但總還是有個機率在,多備份幾次,讓自己安心一點,也沒什麼不好。

備份的時候,編碼可以用 utf8 或是 latin1, 在 mediawiki 的討論上有提到,最好是用 latin1, 不然可能會有問題。用 latin1 在轉換不同編碼的時候,也不會有任何的位元遺失的問題。

mysqldump –opt -p=[password] –default-character-set=latin1 –all-databases wordpress > mysqlbackup.sql

從 mysql 官方站上 mysqldump 程式說明頁的註解上看來的:

#!/bin/sh
date=`date -I`
mysqldump --opt --all-databases --default-character-set=latin1 | bzip2 -c
> /var/backup/databasebackup-$date.sql.bz2

另外,mysqldump 的結果,還可以透過 ssh 直接傳送到另外一台機器上,可以參考下這一篇

update:
20050924:
發現 phpmyadmin 所匯出的 .sql 檔案是用 utf-8 編碼,且 phpmyadmin 預設只能匯入小於 2 MB 的 sql 檔,只好在 linux 上用 mysql 這支程式進行,不過匯入的時候,編碼產出錯亂…

最後決定匯出使用 mysqldump 配合 –default-character-set=latin1 ,匯入使用 mysql,這樣才使編碼正常。

參考資料:
1.用 Gmail 備份 MySQL Database
Gea-Suan 的妙招
2.MySQL簡易備份方法
3.5.8.1. Database Backups
4.http://mail.wikipedia.org/pipermail/mediawiki-l/2004-November/002245.html
5.8.8. The mysqldump Database Backup Program

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

%d 位部落客按了讚: