即使現在的雲資料庫如此強大,但是一些小公司或小項目,還是業務和資料放在一台伺服器,提心吊膽不知道啥時候誤操作把資料庫drop了,誤删除了資料,是以每天自動備份資料庫非常有必要,如果您使用的雲資料庫可以忽略此文章。
shell + 計劃任務備份mysql
#!/bin/bash
#備份路徑
backUpPath='/data/backup'
#資料庫資訊
host='192.168.3.1'
port='3306'
username='root'
password='123456'
dbname='test'
#命名規則
backname=`date "+%Y-%m-%d-%H-%M"`
#連接配接資料庫
mysqldump --host=${host} --port=${port} --user=${username} --password=${password} ${dbname} > ${backUpPath}/${backname}.sql
小知識點
1. mysqldump
2. 計劃任務
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczLcVmds92czlGZvwVP9EUTDZ0aRJkSwk0LcxGbpZ2LcBDM08CXlpXazRnbvZ2LcRlMMVDT2EWNvwFdu9mZvwVPVJzYmVzVhNnRHpFc4JDTwYVbiVHNHpleO1GTulzRilWO5x0LcRHelR3LcJzLctmch1mclRXY39jM4MzN0YTN1EzMxMDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
特殊符号
- “*” 代表取值範圍内的數字,
- “/” 代表”每”,
- “-” 代表從某個數字到某個數字,
- “,” 分開幾個離散的數字
執行個體
- 5 * * * * /shell/back.sh //指定每小時的第5分鐘執行一次備份指令
- */10 * * * * /shell/back.sh //指定每小時的第10分鐘執行一次備份指令
- 8-10 * * * * /shell/back.sh //指定每小時的第8-10分鐘執行一次備份指令
- 8,9,11 * * * * /shell/back.sh //指定每小時的第8 9 11分鐘執行一次備份指令
計劃任務管理
crontab -l //顯示目前計劃任務
crontab -e //編輯計劃任務
/etc/init.d/crond restart //重新開機計劃任務
/etc/init.d/crond start //開始計劃任務
/etc/init.d/crond reload //重載配置檔案
/etc/init.d/crond end //關閉計劃任務
cd /var/spool/cron/ //檢視目前使用者的計劃任務檔案