mysql之通過日誌定時備份和恢復(上)

2021-07-23 05:30:19 字數 1291 閱讀 6888

1.利用mysqldump命令進行手動備份和手動恢復

#> mysqldump -uroot -proot -p3306 --default-character-set=utf8  --opt test > /tmp/test_`date +%y%m%d-%h%m`.sql;

2.利用直接在mysql終端進行匯入

mysql>source /tmp/test_20160927-1408.sql;

3.實現linux的定時進行備份

#> vi /etc/crontab

30 2 * * * root mysqldump -uroot -proot --all-databases |gzip > /mnt/data_bak/database_`date +%y%m%d-%h%m`.sql.gz

附:前面5個引數分別表示分鐘、小時、日、月、年,星號表示任意。`date +%y%m%d-%h%m` 得到當前日期的yyyymmdd-m格式

4.利用linux系統定時器來執行備份指令碼執行

4.1建立需要備份的目錄資料夾

#> mkdir -p /backup/mysql;

4.2建立需要執行的shell指令碼

#>vi back_mysql_test.sh

echo "you are in backup/mysql dir"

file=backup-`date +%y%m%d-%h%m`.sql

mysqldump -uroot -proot -p3306 --default-character-set=utf8 test>$file

echo "your database backup successfull companylete"

4.3修改shell指令碼許可權

#> chomn 777 back_mysql_test.sh

4.4設定定時器執行shell指令碼

#>vi /etc/crontab

0 16 * * * root /backup/mysql/back_mysql_test.sh

附:如果出現 您在 /var/spool/mail/root 中有郵件 則需要檢視郵件

#> mail -f /var/spool/mail/root

如果沒有mail命令則需要進行安裝命令

#>yum search mail

#>yum install mailx

用mail命令檢視收到的郵件(多半是因為第4.3許可權的原因造成的。然後再有一半原因是因為在shell指令碼中的file的定義有問題。)

#> mail -f /var/spool/mail/root

mysql之通過日誌的定時備份和恢復(中)

mysql日誌備份一般遵循一周進行一次全量備份,一天進行一次增量備份。增量備份,必須要開啟mysql的binlog配置,需要在mysql的配置檔案 my.cnf 開啟binlog日誌,同時用mysqlbinlog命令進行恢復 第一步 開啟日誌 vi usr my.cnf 記錄除select語句外的所...

mysql定時備份指令碼 MySql定時備份指令碼

最近需要對某服務的資料庫資料進行備份,因此參考網上教程完成資料庫備份指令碼.因為服務的使用頻率較低,因此設定定時任務,在每天的中午以及午夜時分進行備份操作.bin bash 設定mysql的登入使用者名稱和密碼 根據實際情況填寫 mysql user mysql password mysql hos...

nginx定時備份日誌

思路 用shell指令碼加linux定時任務來備份日誌 首先在進入nginx目錄 cd usr local nginx 建立乙個logdata目錄以後的指令碼和備份的日誌都放在這裡 mkdir logdata進入logdata目錄編輯建立建立乙個runlog.shshell指令碼 cd logdat...