實現Mysql數據庫自動備份-Liunx

查看磁盤空間 df -h

在 home 目錄下,創建文件夾 mkdir bakcup

創建腳本 vim backup.sh or vi backup.sh

 mysql 備份命令 mysqldump

腳本1
mysqldump -u username -puserpassword database_name > /home/backup/database_name_$(date +%Y-%m-%-d-%H-%M-%S).sql

備份全部數據庫
mysqldump -u abc -pdef --all-database > /home/backup/database_name_$(date +%Y-%m-%-d-%H-%M-%S).sql

參數
-u 用戶名;

-p密碼;(這個是明文密碼,mysql 會提示風險以及需要粘在參數-p後面,請注意沒有空格)

database_name_$(date +%Y-%m-%-d-%H-%M-%S),
自定義生成的備份名稱,生成的數據名稱會獲取當前的系統日期+具體時間。

壓縮數據庫
mysqldump -u username -puserpassword database_name | gzip > /home/backup/database_name_$(date +%Y-%m-%-d-%H-%M-%S).sql.gz

壓縮全部數據庫
mysqldump -u abc -pdef --all-database | gzip > /home/backup/database_name_$(date +%Y-%m-%-d-%H-%M-%S).sql.gz

備份與壓縮所有的數據庫+3天后自動刪除已備份的sql+sql.gz
#!/bin/bash
mysqldump -u abc -pdef --all-database > /home/backup/database_name_$(date +%Y-%m-%-d-%H-%M-%S).sql
#!/bin/bash
mysqldump -u abc -pdef --all-database | gzip > /home/backup/database_name_$(date +%Y-%m-%-d-%H-%M-%S).sql.gz
#!/bin/bash
find /home/backup/ -name "*.sql" -mtime +3 -exec rm -rf {} \;
#!/bin/bash
find /home/backup/ -name "*.sql.gz" -mtime +3 -exec rm -rf {} \;

wq! 強制保存並退出

腳本 vim backup.sh or vi backup.sh 內容

添加執行權限

1、chmod u+x backup.sh 或 chmod +x backup.sh
2、chmod u+x /指定路徑/backup.sh 或 chmod +x /指定路徑/backup.sh

測試腳本 ./backup.sh 提示明文密碼的安全問題,以及腳本運行正常

創建定時任務 crontab -e

crontab 格式
第 1 列分鐘 1~59,每分鐘用 *或者*/1表示,整點分鐘數為00或0
第 2 列小時 1~23(0 表示 0 點)
第 3 列日 1~31
第 4 列月 1~12
第 5 列星期 0~6(0 表示星期天)
第 6 列要運行的命令 。

我自定義的任務時間

教程完,無下文

版权声明:
作者:ianext
链接:https://www.ianext.com/%e5%af%a6%e7%8f%bemysql%e6%95%b8%e6%93%9a%e5%ba%ab%e8%87%aa%e5%8b%95%e5%82%99%e4%bb%bd-liunx/
来源:粵分享越快樂
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>