自動備份mysql并刪除7天前備份
以下是一個示例腳本,它使用Shell腳本和MySQL的`mysqldump`命令來自動備份MySQL數(shù)據(jù)庫,并刪除7天前的備份。 ```bash #!/bin/bash # MySQL數(shù)據(jù)庫連接信息 DB_HOST="localhost" DB_USER="your_username" DB_PASS="your_password" DB_NAME="your_database" # 備份文件保存路徑 BACKUP_DIR="/path/to/backup/directory" # 生成備份文件名 BACKUP_FILE="${BACKUP_DIR}/$(date +"%Y%m%d%H%M%S").sql" # 執(zhí)行備份 mysqldump -h ${DB_HOST} -u ${DB_USER} -p${DB_PASS} ${DB_NAME} > ${BACKUP_FILE} # 刪除7天前的備份 find ${BACKUP_DIR} -type f -name "*.sql" -mtime +7 -exec rm {} \; ``` 請注意替換腳本中的以下變量: - `DB_HOST`:MySQL服務(wù)器主機(jī)名或IP地址。 - `DB_USER`:用于連接MySQL的用戶名。 - `DB_PASS`:連接MySQL的用戶密碼。 - `DB_NAME`:要備份的MySQL數(shù)據(jù)庫名稱。 - `BACKUP_DIR`:備份文件保存的目錄路徑。 可使用`crontab`命令將此腳本設(shè)置為自動運(yùn)行。 例如,將其添加到每天晚上12點(diǎn)運(yùn)行的cron作業(yè)中: ``` 0 0 * * * /bin/bash /path/to/your/script.sh ``` 此cron作業(yè)將在每天的午夜12點(diǎn)運(yùn)行腳本,并自動備份MySQL數(shù)據(jù)庫并刪除7天前的備份。