以下是詳細步驟:
1、查看磁盤空間情況:
[root@localhost backup]# df -h 文件系統(tǒng) 容量 已用 可用 已用% 掛載點 /dev/mapper/centos-root 17G 2.7G 15G 16% / devtmpfs 476M 0 476M 0% /dev tmpfs 488M 0 488M 0% /dev/shm tmpfs 488M 7.7M 480M 2% /run tmpfs 488M 0 488M 0% /sys/fs/cgroup /dev/sda1 1014M 130M 885M 13% /boot tmpfs 98M 0 98M 0% /run/user/0 [root@localhost backup]#
選擇合適磁盤存放備份文件
2、創(chuàng)建備份目錄:
cd /home mkdir backup cd backup
3、創(chuàng)建備份Shell腳本:
在創(chuàng)建的目錄下創(chuàng)建備份腳本(vi bkDatabaseName.sh)
#!/bin/bash mysqldump -uroot -proot rtak > /data/backup/rtak_$(date +%Y%m%d_%H%M%S).sql mysqldump -uroot -proot rtak | gzip > /data/backup/rtak_$(date +%Y%m%d_%H%M%S).sql.gz
注:
bkDatabaseName.sh 替換成有意思的名稱
sql備份與gz備份可以二選一,也可全備份
用戶名密碼需要替換
4、添加可執(zhí)行權限:
chmod u+x bkDatabaseName.sh
測試文件是否可正常執(zhí)行(./bkDatabaseName.sh)
注:(1)如果報錯 mysqldump: 未找到命令,執(zhí)行
ln -fs /usr/local/mysql/bin/mysqldump /usr/bin (/usr/local/mysql 路徑為mysql安裝路徑)
(2)如果有警告(Warning: Using a password on the command line interface can be insecure.) 可以忽略。
(3)查看備份sql文件是否正常,能否正常導入數(shù)據(jù)庫
5、添加計劃任務
確認crontab是否安裝:
執(zhí)行 crontab 命令如果報 command not found,就表明沒有安裝
執(zhí)行命令:
crontab -e
輸入以下內容并保存:
*/* * 1 * * /data/backup/bkDatabaseName.sh
/* * 1 * * / 幾個* 分別代表 分鐘 小時 日期 月 星期幾 執(zhí)行備份操作
例如:每分鐘執(zhí)行備份 /1 * * * * / (已測試)
每天凌晨3點執(zhí)行備份/00 3 * * * / (未測試)
6、停止備份操作
在不需要定時備份的時候,執(zhí)行該操作,正常流程到第五步就完成了 ~
crontab -r
注:及時清理已過期很久的sql備份,防止磁盤占滿