MySQL自動備份

2022-08-24 12:42:13 字數 1266 閱讀 6841

1、建立自動備份目錄與指令碼

# mkdir /data/mysqlbackup/

# vi backdb.sh

加入以下指令碼內容

#!/bin/bash

/usr/local/mysql/bin/mysqldump -uacm -pacm123 acmdb > /data/mysqlbackup/acmdb_$(date +%y%m%d_%h%m%s).sql

tar czvf /data/mysqlbackup/acmdb_$(date +%y%m%d_%h%m%s).sql.tar.gz /data/mysqlbackup/acmdb_$(date +%y%m%d_%h%m%s).sql

sh checkexist.sh

mv /data/mysqlbackup/acmdb_$(date +%y%m%d_%h%m%s).sql.tar.gz /data/mysqlbackup/$(date +%y%m%d)/

第一行,注意mysqldump 指令不在root目錄下,所以要給mysqldump 指令加上絕對路徑。方便後續建立定時任務會找到改指令。

第二行,將匯出到本地的sql指令碼打包壓縮,如果不壓縮也可以,處於自己選擇。

第三行,引入乙個檢查指令碼,下面列出。

第四行,將未壓縮的原始指令碼刪除。

注意為backdb.sh新增執行許可權

2、新增檢查指令碼

# chmod u+x backdb.sh

# vi checkexist.sh

#!/bin/bash

dire="/data/mysqlbackup/$(date +%y%m%d)"

if [ -d "$dire" ]; then

echo "資料夾$(date +%y%m%d)已存在,不再建立"

rm -rf /data/mysqlbackup/acmdb*.sql

else

mkdir /data/mysqlbackup/$(date +%y%m%d)

fi3、加入定時任務

# crontab -e

進入編輯操作,新增一下指令碼的絕對路徑,每分鐘執行一次。

*/1 * * * * /data/mysqlbackup/acmsh/backdb.sh

檢視定時任務

# crontab -l 

可以追蹤/var/log/cron日誌檢視定時任務執**況。

# tail -f /var/log/cron 

mysql 自動備份許可權 Mysql 自動備份

很簡單的乙個自動備份方案 bas 件 backup.sh bin bash dbuser root dbpwd 123456 dbname jam00 delbackpath usr local mysql backup dbname date d 7 days ago y m d sql.gz r...

mysql自動備份開啟 MySQL自動備份

mysql user root 使用者名稱 mysql password password 密碼 mysql host localhost ip mysql port 3306 埠號 mysql charset utf8 編碼方式 backup db arr db name 要備份的資料庫名稱,多個...

mysql自動備份庫 MySQL自動備份整庫指令碼

該指令碼支援自動備份,自動上傳到ftp伺服器,備份失敗自動傳送報警郵件 bin sh create by jianglei.yu on 20160421 使用測指令碼需要先安裝mutt郵件傳送工具。使用使用自動化安裝。詳細請參考 define mysql environments hostname ...