linux mysql 數據庫 備份

Mysql備份命令

##將備份文件保存到/usr/local/mysqlback/路徑下,文件名爲super_當前時間.sql
mysqldump -h IP -u用戶名 -p密碼 數據庫名 > /usr/local/mysqlback/super_$(date +%Y%m%d_%H%M%S).sql

Shell腳本

#!/bin/bash

echo $(date +%Y-%m-%d\ %H:%M:%S) "開始備份=============="
#生成備份sql文件
mysqldump -h IP -u用戶名 -p密碼 數據庫明 > /usr/local/mysqlback/super_$(date +%Y%m%d_%H%M%S).sql
#判斷是否成功
if [ $? -eq 0 ]; then

    echo $(date +%Y-%m-%d\ %H:%M:%S) "備份成功!準備刪除30天之前的備份文件。。。。。。"
    find /usr/local/mysqlback/ -mtime +30 -type f | xargs rm -f
    echo $(date +%Y-%m-%d\ %H:%M:%S) "已成功刪除30天之前的文件!"

else

    echo $(date +%Y-%m-%d\ %H:%M:%S) "備份失敗。。。。。。"

fi
echo $(date +%Y-%m-%d\ %H:%M:%S) "備份結束=============="

運行結果

在這裏插入圖片描述

Cron自動備份(確認已經安裝Cron,阿里雲服務器默認有)修改過後自動生效

添加定時任務,每天23點59執行
執行 crontab -e 命令 添加定時任務(和vim操作基本相同)
在任務列表中輸入59 23 * * * /usr/local/mysqlback/backMysql.sh >> /usr/local/mysqlback/backMysql.log命令,保存退出即可

  • >> /usr/local/mysqlback/backMysql.log 是將shell中的打印信息追加進指定的日誌文件(若日誌文件不存在則自動創建),方便以後查看

Cron運行結果

在這裏插入圖片描述

生成的日誌記錄

在這裏插入圖片描述

掃碼關注
​​在這裏插入圖片描述
搜索公衆號:【爪哇日記】關注最新文章

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章