از اردیبهشت ۱۴۰۵ پشتیبانی رسمی از MySQL 8.0 به پایان رسیده است. برای حفظ امنیت، پایداری و عملکرد بهینهی دیتابیس ابری آروانکلاد، تمامی کلاسترهای موجود MySQL 8.0 بهشکل خودکار به نسخهی 8.4 LTS ارتقا پیدا میکنند.
در این راهنما زمانبندی ارتقا، بررسیهای خودکار آروانکلاد و اقدامهای لازم کاربر را مرور میکنیم.
چرا این ارتقا اهمیت دارد؟
ادامهی استفاده از نسخههای بدون پشتیبانی، پایداری و امنیت سرویس را تهدید میکند. مهاجرت به MySQL 8.4 LTS مزایای زیر را به همراه دارد:
- احراز هویت امنتر: غیرفعال شدن پیشفرض پلاگین منسوخ mysql_native_password و انتقال به استاندارد امنتر caching_sha2_password (مبتنی بر SHA-256).
- انطباق با استانداردهای SQL: حذف دستورها و Modifierهای قدیمی Replication برای سادهسازی مدیریت محیطهای High Available.
- پچهای امنیتی حیاتی: دریافت بهروزرسانیهای امنیتی جدید و انتقال به سری کتابخانههای OpenSSL 3.0.
زمانبندی ارتقا
این فرآیند در دو فاز اصلی اجرا میشود تا فرصت کافی برای آمادهسازی در اختیار داشته باشید:
- فاز آمادهسازی و تست (از ۱۱ مهر ۱۴۰۵): امکان ساخت کلاستر جدید با MySQL 8.0 غیرفعال و نسخهی 8.4 جایگزین میشود. در این بازه (تا ۱۱ آبان)، کلاسترهای فعلی بدون تغییر در دسترس هستند تا سازگاری برنامهها بررسی شود.
- فاز ارتقا اجباری (۱۲ آبان ۱۴۰۵): تمامی کلاسترهای باقیماندهی MySQL 8.0 در طول بازهی نگهداری (ساعت ۲:۰۰ تا ۶:۰۰ بامداد) بهشکل خودکار ارتقا مییابند.
مرز مسوولیت مشترک
ارتقای زیرساخت دیتابیس ابری نیازمند همکاری دوجانبه است:
آروانکلاد سلامت و سازگاری سطح دیتابیس را بررسی میکند و اگر خطایی وجود داشته باشد، به شما اطلاع میدهد تا آن را برطرف کنید؛ همچنین بررسی سازگاری برنامه، درایورها و کوئریها برعهدهی شماست.
بررسیهای خودکار آروانکلاد
آروانکلاد موارد زیر را بهشکل خودکار بررسی میکند، اما رفع آنها بر عهدهی کاربر است:
- ستونهای FLOAT و DOUBLE با AUTO_INCREMENT: این ستونها، باید با اجرای ALTER TABLE به انواع INT یا BIGINT تبدیل شوند.
- کلید خارجی بدون ایندکس UNIQUE: وجود ایندکس برای جدولهای والد بررسی میشود. اگر ایندکس وجود نداشته باشد، باید آن را ایجاد کنید.
بررسی سازگاری سمت کاربر
پیش از مهلت ارتقا، موارد زیر را در برنامهی خود بررسی کنید:
- درایور و احراز هویت: برای پشتیبانی از الگوریتم جدید caching_sha2_password، نسخهی PHP را به ۷.۴ یا بالاتر ارتقا دهید و از بهروز بودن libmysqlclient اطمینان حاصل کنید.
- کوئریها و دستورهای SQL: دستورهای منسوخ Replication را بازنویسی کنید؛ برای نمونه:
- جایگزینی SHOW MASTER STATUS با SHOW BINARY LOG STATUS
- جایگزینی START SLAVE با START REPLICA
- آزمایش رفتار برنامه: سرویس خود را پیش از ارتقای اصلی روی یک محیط تستی آزمایش کنید.
راهنماهای زیر به شما در این مسیر کمک میکنند:
راهنمای تست سریع روی کلاستر MySQL 8.4
برای بررسی بدون ریسک پایداری برنامه، میتوانید مراحل زیر را طی کنید تا دیتابیس فعلی شما بدون تغییر باقی بماند و سرویستان تا زمان ارتقا خودکار دچار اختلال نشود:
- به پیشخان دیتابیس ابری در آروانکلاد وارد شوید.
- روی کلاستر موردنظرتان کلیک و وارد جزییات دیتابیس شوید.
- از بخش بکاپها، آخرین بکاپ را انتخاب کنید و گزینهی بازگردانی را بزنید.
راهنمای بکاپ به شما در این مسیر کمک میکند.
با این کار یک دیتابیس جدید از روی بکاپ با نسخهی 8.4.11 ساخته میشود. - در پایان میتوانید درایورها و کدهای برنامهی خود را به این کلاستر متصل کنید و رفتار آن را ارزیابی کنید.
فرآیند ارتقای خودکار
در پایان بازهی آمادهسازی، ارتقا بهشکل زیر انجام میشود:
- فرآیند بهشکل آنلاین و توسط آروانکلاد انجام میپذیرد.
- میزان قطعی هر دیتابیس در طول فرآیند ارتقا حداکثر تا یک دقیقه خواهد بود.
- همزمان با بازهی نگهداری، پیشخان دیتابیس ابری بهشکل موقت در دسترس نخواهد بود.