پشتیبانگیری و بازیابی
چه چیزی خودکار پشتیبان دارد
| پشتیبان خودکار | بازیابی از پنل | |
|---|---|---|
| افزونهٔ PostgreSQL، MariaDB، MongoDB | هر روز | ✓ |
| افزونهٔ Redis | هر روز | — |
| افزونهٔ RabbitMQ و MinIO | — | — |
| دیسک ماندگار سرویسها | — | — |
| دیتابیسی که خودتان به شکل سرویس اجرا کردهاید | — | — |
پشتیبانها هر روز حدود ساعت ۷ صبح به وقت تهران گرفته میشوند. نسخههای قدیمیتر طبق این برنامه نگه داشته میشوند: یکی برای هر روز از ۷ روز اخیر، یکی برای هر هفته از ۴ هفتهٔ اخیر و یکی برای هر ماه از ۶ ماه اخیر. نسخهها بیرون از سرور دیتابیس ذخیره میشوند، پس اگر دیسک دیتابیس هم از دست برود، نسخهها میمانند.
پشتیبان روزانه یعنی در بدترین حالت دادههای یک روز را از دست میدهید. اگر برایتان مهم است، خودتان هم مرتب خروجی بگیرید (پایینتر).
دیدن نسخهها و بازیابی
صفحهٔ افزونه را باز کنید
در پنل اپلیکیشن، روی کارت دیتابیس (ستون «دادهها») بزنید. فهرست نسخههای پشتیبان با تاریخ و حجم هر کدام پایین صفحه است.
«بازیابی» را بزنید
نسخه را انتخاب و تأیید کنید.
صبر کنید
وضعیت از «در صف» به «در حال بازیابی» و بعد «موفق» میرسد.
قبل از بازیابی بدانید:
- هر تغییری که بعد از آن نسخه در دیتابیس ایجاد شده از بین میرود.
- قبل از بازیابی، گردو از وضعیت فعلی یک نسخهٔ ایمنی میگیرد. اگر نسخهٔ اشتباه را بازیابی کردید، میتوانید از همان نسخهٔ ایمنی برگردید.
- در طول بازیابی ممکن است برنامههای متصل خطا بگیرند. اگر میتوانید، در ساعت کمترافیک انجامش دهید.
خروجی گرفتن دستی
برای نسخهای که خودتان نگه دارید (مثلاً قبل از یک migration بزرگ):
-
از کنسول: phpMyAdmin (MariaDB) و mongo-express (MongoDB) خروجی گرفتن دارند. در pgweb (PostgreSQL) میتوانید نتیجهٔ کوئریها را به CSV بگیرید.
-
از یک سرویس متصل: در کادر «اجرای دستور»، خروجی را روی یک دیسک سرویس بنویسید و بعد دانلودش کنید:
sh -c 'pg_dump "$DATABASE_URL" > /data/backup.sql'این فقط وقتی کار میکند که ابزار
pg_dumpدر ایمیج سرویس باشد و کار زیر ۶۰ ثانیه تمام شود.
پشتیبانگیری از دیسک سرویسها
دیسک ماندگار سرویسها پشتیبان خودکار ندارد. راههای گرفتن نسخه:
- در زبانهٔ «ذخیرهسازی» سرویس، «مدیریت فایلها» و بعد «دانلود کل این پوشه بهصورت zip».
- از خط فرمان:
gerdoo service pull <سرویس> /data -o ./backup - بهتر از همه: یک کار زمانبندیشده که هر شب فایلها را به یک فضای S3 (مثلاً یک افزونهٔ MinIO یا سرویس ذخیرهسازی بیرونی) کپی کند.
اگر روی دیسک یک دیتابیس در حال اجرا (مثلاً MySQL یا PostgreSQL که خودتان نصب کردهاید) هست، zip گرفتن از پوشهٔ داده نسخهٔ سالمی نمیدهد. از خود دیتابیس خروجی بگیرید.
هزینه
حجم نسخههای پشتیبان جدا از فضای دیسک دیتابیس، به ازای هر گیگابایت در ماه حساب میشود (حدود نصف قیمت فضای دیسک). تعرفهها
حذف افزونه
با حذف یک افزونه، نسخههای پشتیبانش دیگر در پنل در دسترس نیستند. قبل از حذف، خودتان یک خروجی بگیرید.
در سایت گردودیتابیس ابری مدیریتشده در گردو