經常我們要做一些資料庫的備份,主要的備份有三種
第一種:實時備份,表現為主從備份
第二種:非實時的備份,表現為按日,按星期備份等
第三種:異地備份,表現為災備,這種一般是銀行,大機構使用。
今天我們來**下按日備份
我們首先編寫一段這樣的指令碼:
mysqldump -uroot -p666666 safe > /var/backup/mysql/safe`date +%y%m%d`.sql
這就是一行備份命令。然後咱們要設定乙個觸發器,觸發這條命令執行,這裡就用到crontab
# chmod -r 777 backup-mysql.sh
# crontab -e
#m h dom mon dow command
0 3 * * * /var/backup/backup-mysql.sh
解釋下哈:這個backup-mysql.sh是剛剛我們編寫的備份指令碼,然後給了乙個最高的777許可權。
crontab -e就是咱們編寫的乙個時間觸發引數:
時間的格式是
分 時 日 月 周
上面的例子是指定每天凌晨3點備份一次資料庫
最後咱們再執行下重啟crond服務。
# service crond restart
附:如果沒有chmod -r授權的話,執行的時候會報permission denied
[root@instance-kkvak9j5 mail]# cat root
from [email protected] fri mar 27 15:00:01 2020
return-path: x-original-to: root
delivered-to: [email protected]
received: by instance-kkvak9j5.localdomain (postfix, from userid 0)
id 56852100bd9; fri, 27 mar 2020 15:00:01 +0800 (cst)
from: "(cron daemon)" to: [email protected]
subject: cron /var/backup/backup-mysql.sh
content-type: text/plain; charset=utf-8
auto-submitted: auto-generated
precedence: bulk
x-cron-env: x-cron-env: x-cron-env: x-cron-env: x-cron-env: x-cron-env: x-cron-env: x-cron-env: message-id: <[email protected]>
date: fri, 27 mar 2020 15:00:01 +0800 (cst)
/bin/sh: /var/backup/backup-mysql.sh: permission denied
[root@instance-kkvak9j5 mail]# pwd
/var/spool/mail
所以一定要注意。 Mysql按天分組(按日分組)
select date format date created,y m d as day,sum order price as sumtol from dn sale where sale person id 1 group by date format date created,y m d 根據f...
Mysql按年按月按日按周統計查詢
select date format created date,y m d as time,sum money money from o finance detail where org id 1000 group by time select date format created date,y ...
mysql的日備份和周備份 MySQL完全備份
在生成環境中,資料的安全性是至關重要的,任何資料的丟失都可能產生嚴重的後果 使用資料庫過程中,有多種原因造成資料的丟失 1 程式錯誤 指對資料庫操作的程式難免有些錯誤,造成資料丟失 2 人為錯誤 指由於使用人員的誤操作造成的資料破壞,還有可能是黑 客對系統 造成的資料丟失等 3 計算機失敗 指執行資...