شاید بدانید، شاید هم نه! ولی وبسایت شایان وب رو به سرور منتقل کردم! قبلا سایت شایان وب روی هاست قرار داشت ولی بعد از مدتی که بازدید زیادی داشتیم و منابع اختصاصیتری برای وبسایت نیاز داشتیم، تصمیم گرفتم یک سرور تهیه کنم تا وبسایت منابع اختصاصیتری داشته باشد. هاست مشکلی ندارد؛ اما برای وبسایتی که به منابع بیشتری نیاز پیدا میکند و منابع اشتراکی برایش کافی نیست، بهترین هاست دنیا هم پاسخگو نیست! پس یک سرور تهیه کردم و تجریباتی رو با شما در اینجا و مقالات دیگر وبسایت شایان وب به اشتراک خواهم گذاشت.

یکی از مواردی که پیش اومد، مشکلات دیتابیس بود. خود سایت کاملا درست کار میکرد ولی وقتی بکاپ تهیه میشد (مثلا توسط افزونهی وردپرس updraftplus یا به هر نحو دیگری) مشکل بوجود میآمد.
خب، بذارید براتون یکم جزئیتر ماجرا رو تعریف کنم، روی هاست قبلی که هاست وردپرس ایران سرور هم بود، دو مورد در خصوص دیتابیس با موارد سرور فرق داشت:
ببینید، داستان اصلی اینه که اول از همه utf8 منتشر شد و خوب کار میکرد ولی مشاهده شد که با برخی موارد چینی و همین طور ایموجیها (یعنی این دوستان: ??????) مشکل داره و بصورت ? سیو میکنه! پس بعدا اومدند و utf8mb4 رو نوشتند تا مشکل حل بشه!
پس ما باید بیاییم و utf8mb4 رو ست کنیم.

خب، پس متوجه شدید که دو مورد اصلی در خصوص دیتابیس در این سرور با هاست متفاوت بود که باعث مشکل شده بود. ولی چه مشکلی؟!!!
خب، همونطور که احتمالا حدس زدید، مشکل ایموجی بوجود اومد! یعنی وقتی بکاپ دیتابیس رو ریستور کردیم، ناگهان تمام ایموجیهای سایت به ? تبدیل شد!!! و تغییر و برگشت و اینها هم داستانی شد... (چون سایت رو برای چند روز به سرور منتقل کردیم و در سایت سفارش ثبت شده بود، کاربران ثبتنام کرده بودند، مطالبی در سایت بروز شده بود و...)
پس، بااااااید حتماااا شما هم اون دو موردی که گفتم رو انجام بدهید!
حالا چطوررری!؟! الان بهتون خیییلی ساده و سریع میگم! ??
خب دوستان، برای تغییر نسخهی MySQL یعنی فعالسازی MariaDB نسخهی 10.5، کاری که بهتون میگویم رو انجام بدهید:
از طریق ssh به سرور متصل بشوید و دستورات زیر رو وارد کنید: (البته باید حتما کنترلپنلتون دایرکتادمین باشه)
cd /usr/local/directadmin/custombuild ./build set mariadb 10.5 ./build set mysql_inst mariadb ./build set mysql_backup yes ./build update ./build mariadb
و تمام! mariadb نصب میشه!!
و برای اینکه هر دیتابیس جدیدی که ایجاد میشه، بطور پیشفرض ساختار utf8mb4 رو داشته باشه، باید فایل /etc/my.cnf رو باز کنید، ویرایش کنید و بعد کد زیر رو در خط آخر وارد کنید: (اگر دقیقا چنین چیزی هست -ولی مثلا utf8mb4 رو چیز دیگری نوشته-، جایگزین قبلی کنید)
[mysqld] collation-server = utf8mb4_unicode_ci init-connect='SET NAMES utf8mb4' character-set-server = utf8mb4
و تمام! کل داستان همین بود!!
با انجام دو کاری که گفتم، درست میشه، البته فقط برای دایرکت ادمین به این شکل هست و دستورات و موارد برای سیپنل متفاوت هستش که با یک جستجو میتوانید پیدا کنید.
یک ریستارت هم سرور رو انجام بدهید بد نیست?? و البته!! این مقاله رو از زیر لایک کنید و نظرتون رو به من بگید! اگه هم کار کرد و کلی توی زمانتون صرفهجویی شد، توی کامنتهایی پایین برام بنویسید??
امیدوارم از این مقاله لذت برده باشید و براتون مفید بوده باشه???