Linux定時備份數據庫
一、用命令實現備份
首頁進入mysql的bin目錄
1、備份數據
mysqldump -uusername -ppassword discuz > discuz_2010-04-01.sql
這樣就把discuz數據庫所有的表結構和數據備份到discuz_2010-04-01.sql里了,
如果數據量大會占用很大空間,這時可以利用gzip壓縮數據,
命令如下:
mysqldump -uusername -ppassword discuz | gzip > discuz_2010-04-01.sql.gz
系統崩潰,重建系統時,可以這樣恢復數據:
mysql -uusername -ppassword discuz < discuz_2010-04-01.sql
從壓縮文件直接恢復:
gzip < discuz_2010-04-01.sql.gz | mysql -uusername -ppassword discuz
二、利用crontab,系統每天定時備份mysql數據庫
1、創建保存備份文件的路徑/mysqldata
mkdir /mysqldata
2、創建/usr/sbin/bakmysql文件
輸入以下內容:
mysqldump -umysql -p51uptry uptry | gzip > /mysqldata/uptrydate +%Y-%m-%d_%H%M%S
.sql.gz
3、修改文件屬性,使其可以執行
chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab
在下面添加
01 3 * root /usr/sbin/bakmysql
表示每天3點鐘執行備份 crontab使用說明
5、重新啟動crond
/etc/rc.d/init.d/crond restart
完成。
三、數據的恢復
首頁進入mysql的bin目錄
創建數據庫
mysqladmin create discuz
恢復數據
mysql discuz < /mysqldata/discuz_2010-04-01.sql
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!