همهچیز در تبِ Backups صفحهی دیتابیس است. PostgreSQL، MySQL، MariaDB و MongoDB بکاپ دارند؛ Redis فعلاً ندارد.
بکاپِ خودکار#
هر دیتابیسِ جدید از روزِ اول بکاپِ روزانه دارد: ساعتِ ۳ بامدادِ تهران، با نگهداریِ ۷ نسخهی آخر.
owner و admin با EDIT SCHEDULE میتوانند این را عوض کنند:
- Daily: هر روز در ساعتی که انتخاب میکنید.
- Every 6 hours: ساعتِ ۰۰، ۰۶، ۱۲ و ۱۸.
- Weekly: یک روزِ هفته در ساعتی که انتخاب میکنید.
- Keep copies: بین ۱ تا ۳۰ نسخه. نسخههای قدیمیتر خودکار پاک میشوند.
BACKUP NOW همان زمانبندی را یک بار همین الان اجرا میکند.
هزینهی فضای بکاپ#
فضای بکاپ تا اندازهی دیسکِ پکِ همان دیتابیس رایگان است. بیشتر از آن، بهازای هر گیگ ساعتی ۵۵ ریال (حدودِ ۴٬۰۰۰ تومان در ماه) در همان هزینهی ساعتیِ دیتابیس حساب میشود. تبِ Backups فضای مصرفی و هزینهی تقریبیِ ماهانهی مازاد را نشان میدهد. برای کم کردنش تعدادِ نسخهها را کم کنید.
دانلود#
کنارِ هر بکاپِ موفق، owner و admin دکمهی DOWNLOAD را میبینند. لینکِ دانلود فقط ۵ دقیقه معتبر است و فقط برای همان کاربر کار میکند.
فرمتِ فایلها:
| موتور | فایل | بازگردانی با |
|---|---|---|
| PostgreSQL | .dmp (خروجیِ pg_dump -Fc) | pg_restore |
| MySQL / MariaDB | .dmp (SQL ساده) | mysql یا mariadb |
| MongoDB | .tar.gz (خروجیِ mongodump --gzip --archive) | mongorestore --gzip --archive |
بازگردانی#
کنارِ هر بکاپ دکمهی RESTORE هست (owner و admin). دو راه دارید:
- Restore into a new database (پیشنهادی): یک دیتابیسِ جدید با همان پک و همان نسخه ساخته میشود و بکاپ روی آن ریخته میشود. دیتابیسِ فعلی دست نمیخورد. دیتابیسِ جدید تا وقتی پاکش نکنید مثلِ هر دیتابیسِ دیگر هزینه دارد.
- Replace the data: دادهی همین دیتابیس با بکاپ جایگزین میشود. در MongoDB فقط collectionهایی که در بکاپ هستند جایگزین میشوند و بقیه میمانند. باید نامِ دیتابیس را برای تأیید تایپ کنید. قبل از هر تغییری یک بکاپِ ایمنی از دادهی فعلی گرفته میشود که در فهرست با برچسبِ safety backup before a restore or import دیده میشود.
پیشرفت در بخشِ Restores & imports با لاگِ زنده دیده میشود. تا قبل از شروعِ بارگذاری میتوانید CANCEL بزنید. وقتی کار تمام شود، پیامِ گروهِ Backups & restores در کانالهای اعلان شما میآید.
بعد از حذفِ دیتابیس#
بکاپهای یک دیتابیسِ حذفشده ۷ روز روی سرور میمانند و بعد برای همیشه پاک میشوند. اگر دیتابیسی را اشتباهی حذف کردهاید، در همین ۷ روز تیکت بزنید. بعد از آن بازگردانی ممکن نیست؛ پس قبل از حذف، بکاپِ لازم را DOWNLOAD کنید.
ایمپورت از بیرون#
برای آوردنِ dumpِ یک دیتابیسِ دیگر (مثلاً از لیارا یا دارکوب) از IMPORT DUMP استفاده کنید. راهنمای کامل: مهاجرت از سرویسهای دیگر.
بکاپِ مستقلِ خودتان#
برای کنترلِ کامل، کنارِ بکاپِ پنل یک dump هم خودتان نگه دارید. با دسترسی از بیرون یا از شِلِ کانتینرِ اپ:
# PostgreSQL
pg_dump "$DATABASE_URL" -Fc -f backup.dump
# MySQL / MariaDB
mysqldump -h "$DB_HOST" -P "$DB_PORT" -u "$DB_USER" -p"$DB_PASSWORD" "$DB_NAME" > backup.sql
# MongoDB
mongodump --uri "$DATABASE_URL" --gzip --archive=backup.archive.gz
فایل را بیرون از همان سرویس نگه دارید، مثلاً روی یک سرویسِ MinIO یا فضای ذخیرهسازیِ خودتان.
