دادههای دیتابیس باارزشترین دارایی هر کسبوکار دیجیتال هستند. از دست رفتن اطلاعات به دلیل خطای انسانی یا باگ نرمافزاری جبرانناپذیر است. در این آموزش راهنمای کامل نصب دیتابیس و زمانبندی پشتیبانگیری خودکار روزانه و فشردهسازی آن با ارسال به فضای ذخیرهسازی ابری سازگار با S3 را فرا میگیرید.
۱. اسکریپت تهیه بکاپ دیتابیس MySQL و فشردهسازی
#!/bin/bash
BACKUP_DIR="/backup/mysql"
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
DB_NAME="cutshut_db"
DB_USER="root"
DB_PASS="StrongPassword123"
mkdir -p $BACKUP_DIR
mysqldump -u$DB_USER -p$DB_PASS --single-transaction --quick $DB_NAME | gzip > $BACKUP_DIR/$DB_NAME-$DATE.sql.gz
# ارسال به استوریج S3
aws s3 cp $BACKUP_DIR/$DB_NAME-$DATE.sql.gz s3://cutshut-backups/mysql/
# حذف بکاپهای قدیمیتر از ۷ روز از سرور محلی
find $BACKUP_DIR -type f -mtime +7 -name "*.sql.gz" -exec rm {} \;
۲. ایجاد CronJob برای اجرای خودکار در ساعت ۳ بامداد
sudo crontab -e 0 3 * * * /bin/bash /root/backup_db.sh > /var/log/backup.log 2>&1
آیا این مقاله برای حل مشکل شما مفید بود؟