歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux自動備份壓縮MySQL數據庫的實用方法

MySQL定期備份是一項重要的工作,但人工操作太繁瑣,也難避免有所疏漏,使用下面的方法即可讓系統定期備份數據。

  ◆1、創建備份文件夾

  #cd /www

  #makedir backup

  ◆2、編寫運行腳本

  #vi autobackup

  寫入以下內容:

  filename=`date +%Y%m%d`

  mysql_bin_dir/mysqldump –opt dataname -u user -ppassword | gzip > /www/mysqlbackup/name${filename}.sql.gz

  保存退出

  說明:

  (1)mysql_bin_dir:mysql的bin路徑;

  (2)dataname:數據庫名;

  (3)user:數據庫用戶名;

  (4)password:用戶密碼;

  (5)name:自定義備份文件前綴標識。

  如上例,將自動備份mysql數據庫,並以gzip壓縮方式存儲,文件名為name20080101.gz的形式。

  ◆3、為腳本添加執行權限

  #chmod +x autobackup

  ◆4、讓crontab來完成定期執行的任務

  這一步中,Redhat的方法會不一樣,後面專門給出。

  編輯crontab:

  #vi /etc/crontab

  在最後一行中加入:

  01 5 * * * root /www/autobackup

  每天5點運行腳本,也可以修改5為其他指定時間。

  Redhat方法:

  Redhat的crontab采用按時間調用4個目錄(/etc/cron.hourly:每小時;/etc/cron.daily:每天;/etc/cron.weekly:每周;/etc/cron.monthly:每月)中腳本出來運行的方式。

  Redhat中只需要將剛才編輯的腳本復制到相應的目錄即可。

  ◆5、重啟crontab

  #/etc/rc.d/init.d/crond restart

  完成。

Mysqldump 命令小記 -opt

 

默認Mysqldump導出的SQL文件中不但包含了導出的數據,還包括導出數據庫中所有數據表的結構信息。   –opt:此Mysqldump命令參數是可選的,如果帶上這個選項代表激活了Mysqldump命令的quick,add-drop-table,add-locks,extended-insert,lock-tables參數,也就是通過–opt參數在使用Mysqldump導出Mysql數據庫信息時不需要再附加上述這些參數。   –quick:代表忽略緩沖輸出,Mysqldump命令直接將數據導出到指定的SQL文件。   –add-drop-table:顧名思義,就是在每個CREATE TABEL命令之前增加DROP-TABLE IF EXISTS語句,防止數據表重名。   –add-locks:表示在INSERT數據之前和之後鎖定和解鎖具體的數據表,你可以打開Mysqldump導出的SQL文件,在INSERT之前會出現LOCK TABLES和UNLOCK TABLES語句。   –extended-insert (-e):此參數表示可以多行插入。

 

Copyright © Linux教程網 All Rights Reserved