دیتابیس بدون بکاپ، یعنی دیتایی که برای از دست دادنش داوطلب شدهاید! سرورها ممکن است بسوزند، هک شوند یا با دستور rm -rf اشتباهی پاک شوند. قانون ۳-۲-۱ بکاپ را جدی بگیرید.

قانون ۳-۲-۱ چیست؟
۳ نسخه از دیتا داشته باشید، روی ۲ رسانه مختلف ذخیره کنید و ۱ نسخه را حتماً خارج از محل اصلی (Off-site) نگه دارید.
اسکریپت ساده بکاپ گیری MySQL
یک فایل bash ساده بسازید که دیتابیس را dump کند، فشردهسازی کند و نام آن را بر اساس تاریخ روز تنظیم نماید:
#!/bin/bash
DATE=$(date +%F)
BACKUP_DIR="/var/backups/db"
mkdir -p $BACKUP_DIR
# گرفتن بکاپ
mysqldump -u root -p'MY_PASSWORD' my_database | gzip > $BACKUP_DIR/db-$DATE.sql.gz
# حذف بکاپهای قدیمیتر از 30 روز
find $BACKUP_DIR -type f -name "*.sql.gz" -mtime +30 -deleteاتوماسیون با Cron Job
برای اینکه این اسکریپت هر شب ساعت ۳ بامداد (زمانی که ترافیک سایت کم است) اجرا شود، دستور crontab -e را زده و خط زیر را اضافه کنید:
0 3 * * * /path/to/backup-script.sh
اشتراکگذاری:
بازگشت به وبلاگ