رفع مشکلات پایگاه داده پس از بهروزرسانی
مشکل
گاهی اوقات، فرآیند مهاجرت پایگاه داده (database migration) در هنگام ارتقا با شکست مواجه میشود. این مشکل معمولاً به دو دلیل رخ میدهد:
- مشکلات مربوط به سطوح دسترسی (privileges) پایگاه داده.
- ناقص بودن یا نبودن فایلهای مهاجرت در طول ارتقا.
توجه داشته باشید که ناقص بودن فایلهای مهاجرت (که در پوشه /database/upgrade/{VERSION}/ قرار دارند) زمانی اتفاق میافتد
که شما وبسایت خود را قبل از شروع فرآیند ارتقا، در حالت تعمیر و نگهداری (maintenance) قرار نداده باشید.
راهحل
فرض کنید وبسایت شما روی نسخه ۱.۰.۰ که نسخه فعلی برنامه است، در حال اجراست و ما نسخه جدید ۱.۰.۱ را منتشر میکنیم. اگر پس از اینکه وبسایت خود را به نسخه ۱.۰.۱ ارتقا دادید، با مشکلات پایگاه داده مواجه شدید، برای حل این مشکل باید مراحل زیر را دنبال کنید:
- اطمینان حاصل کنید که کاربر پایگاه داده شما، دسترسی کامل (full privileges) برای مدیریت پایگاه داده را در هاستِ پایگاه داده دارد.
- کش را از طریق پنل مدیریت پاک کنید.
- وبسایت خود را از طریق پنل مدیریت در حالت تعمیر و نگهداری (maintenance) قرار دهید.
- مقدار
APP_VERSIONرا در فایل/.envبه نسخه قدیمی قبلی (در مثال ما: ۱.۰.۰) کاهش دهید (Downgrade کنید). مانند نمونه زیر:
APP_VERSION=1.0.0
- با مراجعه به URL ارتقا (
domain.tld/upgrade)، فرآیند ارتقا را دوباره اجرا کنید. - انجام شد.