۳ راهکار ساده برای تغییر MySQL به MariaDB

آموزش تغییر MySQL به MariaDB
Avatar
نویسنده: علیرضا برزودی
دوشنبه 13 شهریور 1402
مطالعه: ۱۴ دقیقه ۰ نظر ۱۲۲۲ بازدید

تغییر MySQL به MariaDB با فرا رسیدن انقلابی آغاز شد که در سیستم‌های مدیریت پایگاه رخ داد. زمانی که MySQL به‌عنوان پیشکسوت سیستم‌های DBMS، عصای ناکارآمدی به‌دست گرفت و میدان را به نفع DBMS تازه‌نفسی همچون MariaDB خالی کرد، MariaDB تمام تلاش خود را برای به نمایش گذاشتن عملکرد قدرتمندتر از رقیب عصابه‌دست خود یعنی MySQL به‌کار گرفت. سیستم مدیریت دیتابیس MariaDB توانست طی مدت زمان کوتاهی در دل توسعه‌دهندگان و سازمان‌ها جا باز کند. در این مقاله از آموزش پایگاه داده بلاگ پارس پک، نحوه تغییر از MySQL به MariaDB خواهید خواند. اگر شما هم قصد مهاجرت به سیستم کارآمد، سبک و تازه‌نفس MariaDB دارید، خواندن این مقاله را از دست ندهید.

نگاهی بر سیستم‌های مدیریت دیتابیس MySQL و MariaDB

پیش از تغییر MySQL به MariaDB باید اقرار کرد منصفانه نیست اگر به‌همین سادگی از قابلیت‌های قدرتمند MySQL بگذریم. MySQL و MariaDB هر دو از سیستم‌های محبوب مدیریت پایگاه داده هستند که برای ذخیره و مدیریت دیتابیس‌های سازمانی مورد استفاده قرار می‌گیرند. هر دو سیستم از یک پروژه مشترک آغاز شدند. در سال ۱۹۹۵ اوراکل پروژه MySQL را خریداری کرد، درحالی‌که در سال ۲۰۰۹ MariaDB به‌عنوان یک نسخه سبک‌تر و کارآمدتر از MySQL روی کار آمد.

 در حال حاضر، هر دو سیستم مدیریت پایگاه داده MySQL و MariaDB به دلیل ویژگی‌های کاربردی، قابلیت و پشتیبانی گسترده از محبوبیت بالایی برخوردار هستند. درادامه، به برخی از مهم‌ترین ویژگی‌های این دو سیستم مدیریت پایگاه داده اشاره خواهیم کرد:

کلیدی‌ترین ویژگی‌ MySQL

  • مقیاس‌پذیری و دسترسی بالایی دارد.
  • یک سیستم مدیریت پایگاه داده متن‌باز و قدرتمند است.
  • از پشتیبانی گسترده و مقیاس پذیر توسعه‌دهندگان برخوردار است.
  •  از زبان استاندارد SQL پشتیبانی کرده و با سایر سیستم‌عامل‌ها سازگار است.

اگر می‌خواهید اطلاعات بیشتری راجع‌به MySQL و نحوه نصب آن بدانید، پیشنهاد می‌کنیم نگاهی به مقاله زیر بیندازید.

MySQL چیست؟

کلیدی‌ترین ویژگی‌ MariaDB

  • با انواع زبان‌های برنامه‌نویسی و سیستم‌عامل‌های مختلف سازگار است.
  • از موتورهای ذخیره‌سازی مختلف از جمله InnoDB، MyRocks و Aria پشتیبانی می‌کند.
  • نسل بهبودیافته MySQL است که به‌هدف توسعه نسخه‌ای بهتر از MySQL طراحی شده است.
  • از پیچیدگی کدسورس‌های MySQL فاصله گرفته است و به‌راحتی می‌توان برنامه‌هایی را که قبلاً روی MySQL وجود داشت، به MariaDB منتقل کرد.

استفاده از MariaDB برخلاف MySQL هیچ هزینه‌ای برایتان ندارد. همچنین از رمزگذاری باینری و جدول موقت برای حفظ امنیت بیشتر بهره برده است.

انتخاب بین MySQL و MariaDB به نیازهای شما بستگی دارد. هر دو سیستم قابلیت‌های قدرتمندی دارند که برای مدیریت دیتابیس به‌عنوان عصای دست توسعه‌دهندگان به‌خوبی عمل می‌کنند.

برای آشنایی با ویژگی‌های MariaDB، تفاوت آن با MySQL و نحوه نصب و راه‌اندازی MariaDB در اوبونتو مقاله زیر را از دست ندهید.

MariaDB چیست؟

 مهم‌ترین نکات پیش از تغییر MySQL با MariaDB

قبل از انتقال پایگاه داده MySQL و MariaDB نیاز است با پیش‌نیازهای لازم آشنا شویم. درغیراین‌صورت، به‌جای اینکه کارتان ساده‌تر شود، ممکن است با دردسر جدیدی روبرو شوید. به‌عبارتی قصد برداشتن ابرو دارید، اما چشم پایگاه داده‌تان را کور می‌کنید. برای جلوگیری از این اتفاق، نیاز است به موارد زیر توجه کنید:

  • مطمئن شوید از آخرین نسخه MariaDB استفاده می‌کنید.
  • قبل از هر اقدامی یک بکاپ کلی از دیتابیس خود تهیه کنید.
  • بهتر است پیش از اقدام برای مهاجرت و انتقال دیتابیس MySQL و MariaDB از سازگار بودن سیستم مدیریت دیتابیس تازه‌نفس از طریق محیط تست MariaDB مطمئن شوید.
  • در تغییر MySQL به MariaD ،MariaDB در بسیاری از موارد با MySQL سازگار است و به‌راحتی می‌توان برنامه‌ها و سیستم‌های قبلی در MySQL را به MariaDB منتقل کرد. بااین‌حال، بررسی کنید نسخه‌ای از MariaDB که قصد استفاده از آن را دارید، با نیازهای شما سازگار باشد.

 بهتر است کار تغییر MySQL به MariaDB را به یک تیم متخصص بسپارید. اگر در سازمان خود از تیم حرفه‌ای برای این کار برخوردار هستید، مطمئن شوید تمام اقدامات لازم پیش از مهاجرت به MariaDB انجام شده باشد. اگر اطلاع کافی در این زمینه ندارید، از طریق تیکت این کار را به میزبان سایت خود بسپارید.

تجربه مدیریت پایگاه داده خود را با MariaDB بهتر کنید! با تغییر MySQL به MariaDB، دنیایی از عملکردهای پیشرفته، امنیت بی‌نظیر و مقیاس‌پذیری بهبود یافته را در مدیریت دیتابیس تجربه خواهید کرد. همچنین از سازگاری این سیستم مدیریت دیتابیس تازه نفس یعنی MariaDB با MySQL از نفس افتاده لذت خواهید برد.

 انتقال دیتابیس MySQL و MariaDB با استفاده از خط فرمان

در این قسمت از راهنمای تغییر MySQL به MariaDB قصد داریم این مسیر را بااستفاده از خط فرمان بررسی کنیم. برای این کار، نیاز است مرحله‌به‌مرحله به‌صورت زیر عمل کنید:

مرحله اول: از دیتابیس خود نسخه پشتیبان تهیه کنید

در بکاپ‌گیری از دیتابیس برای تغییر MySQL به MariaDB روش‌های مختلفی وجود دارد. شما می‌توانید از طریق یکی از روش‌های زیر، نسبت به تهیه بکاپ از دیتابیس خود اقدام کنید:

روش اول: بکاپ‌گیری با استفاده از دستورات MySQL

در این روش، به‌راحتی و بااستفاده از دستور «mysqldump» ‌می‌توانید تمام اطلاعات دیتابیس را در یک فایل دراختیار داشته باشید.

مرحله اول: لاگین کردن

برای استفاده از این دستور، نیاز است نسبت به لاگین باینری اقدام کنید. از طریق تنظیمات MySQL، دستور زیر را در زیر قسمت [mysqld] در فایل my.cnf اضافه کنید:

log-bin=mysql-bin

مرحله دوم: ری‌استارت کردن

اکنون، MySQL را با استفاده از دستور زیر ری‌استارت کنید:

$ sudo service mysql restart

مرحله سوم: بکاپ‌ گرفتن

پس از آن، دستور mysqldump را به‌صورت زیر وارد کنید:

$ mysqldump --all-databases --user=root --password --master-data > backupdb.sql

در دستور بالا، نام دیتابیس، نام کاربر دیتابیس و رمزتان را جایگزین کنید. خروجی که به شما نشان خواهد داد، به‌صورت زیر خواهد بود:

نحوه تغییر MySQL با MariaDB
خروجی اجرای دستور mysqldump

مرحله اختیاری: ایجاد بکاپ در my.cnf

در مرحله اختیاری تغییر MySQL به MariaDB، می‌توانید برای امنیت بیشتر یک نسخه بکاپ در my.cnf با دستور زیر ایجاد کنید:

$ sudo cp /etc/mysql/my.cnf /opt/my.cnf.bak

روش دوم: بکاپ‌گیری با استفاده از نرم‌افزار KLS Backup

اگر می‌خواهید از دیتابیس خود بکاپ کامل تهیه کرده و در فضای ابری ذخیره کنید، یکی از قدرتمندترین ابزارها برای این کار، نرم‌افزار KLS Backup است. با این ابزار، بکاپ‌گیری از دیتابیس در کنار سایر ویژگی‌های قدرتمند نرم‌افزار کارتان را راحت‌تر خواهد کرد. اگر مشتاق هستید نحوه بکاپ‌گیری با نرم‌افزار KLS Backup را بدانید، خواندن مقاله «آموزش استفاده از KLS Backup» را از دست ندهید. در این مقاله توضیح دادیم چگونه زیر یک دقیقه، از دیتابیس خود در فضای ابری پارس پک نسخه بکاپ تهیه کنید.

روش سوم: بکاپ‌گیری از طریق هاست بکاپ

نکته قابل توجهی که بکاپ‌گیری در تغییر MySQL به MariaDB را راحت‌تر می‌کند، هاست بک آپ است. اگر هاست بک آپ داشته باشید برای تهیه نسخه پشتیبان از دیتابیس راحت‌تر هستید. به‌عبارتی، با هاست بکاپ فارغ از اینکه دیتابیس شما از چه نوعی است، قادر خواهید بود به‌صورت پیشرفته و در زمان‌بندی مشخص نسبت به تهیه بکاپ‌گیری خودکار دیتابیس اقدام کنید. مهم‌ترین ویژگی استفاده از هاست بکاپ، امنیت بی‌نظیر آن است. این یعنی دیگر دغدغه حمله هکرها و نفوذ بدافزارها به دیتابیس خود را نخواهید داشت.

مرحله دوم: MySQL را حذف کنید

پس از بکاپ‌گیری از دیتابیس با یکی از روش‌هایی که در بالا گفتیم، سراغ مرحله بعدی می‌رویم. در مرحله دوم از راهنمای تغییر MySQL به MariaDB، از طریق ssh و یکی از دستورات زیر، سرویس MySQL را غیرفعال کنید:

$ sudo service mysql stop
$ sudo systemctl stop mysql 
$ sudo /etc/init.d/mysql stop

پس از توقف سرویس MySQL می‌توانید تنظیمات و بسته‌های نصبی آن را حذف کنید. برای این کار، براساس نوع سیستم‌عامل خود یکی از دستورات زیر را به‌کار ببرید:

سیستم‌های مبتنی بر PRM (مانند Centos، Fedora یا RHEL)

$ sudo yum remove mysql* mysql-server mysql-devel mysql-libs

$ sudo rm -rf /var/lib/mysql

سیستم‌های مبتنی بر دبیان (مانند اوبونتو، دبیان یا mint)

$ sudo apt-get remove mysql-server mysql-client mysql-common

$ sudo apt-get autoremove

$ sudo apt-get autoclean

$ sudo deluser mysql

$ sudo rm -rf /var/lib/mysql

اگر از phpmyadmin استفاده می‌کنید، MySQL را از طریق پنل مدیریت سرور غیرفعال کنید.

هرآنچه باید درباره ویژگی‌ها، کاربردها، نحوه کار و نسخه‌های مختلف phpMyAdmin بدانید را در مقاله زیر بخوانید.

phpMyAdmin چیست؟

مرحله سوم: MariaDB را نصب و راه‌اندازی کنید

سراغ قسمت اصلی راهنمای تغییر MySQL به MariaDB می‌رویم. تا این قسمت از مسیر مهاجرت و تغییر MySQL به MariaDB توانستید از دیتابیس خود نسخه بکاپ تهیه کرده و سرویس MySQL را غیرفعال کنید. اکنون می‌خواهیم MariaDB تازه‌نفس را نصب کنیم.

درنظر داشته باشید اگر از آخرین نسخه CentOS یا اوبونتو استفاده می‌کنید، mariaDB از قبل در مخازن نصبی سیستم‌عامل شما وجود دارد. برای تهیه MariaDB در نسخه‌های قدیمی‌تر می‌توانید به وب‌سایت رسمی MariaDB مراجعه کنید.

انتقال دیتابیس MySQL و MariaDB بین سرور
نصب و راه‌‌اندازی MariaDB

در این قسمت از انتقال دیتابیس MySQL و MariaDB بین سرور، می‌خواهیم MariaDB را روی نسخه‌های محبوب اوبونتو و CentOS نصب کنیم:

دستور نصب MariaDB روی اوبونتو

$ sudo apt-get install software-properties-common

$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db

$ sudo add-apt-repository 'deb http://mirror.mephi.ru/mariadb/repo/5.5/ubuntu trusty main'

$ sudo apt-get update

$ sudo apt-get install mariadb-server

دستور نصب MariaDB روی CentOS

$ sudo vi /etc/yum.repos.d/MariaDB.repo

[mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/5.5/centos7-amd64

gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

$ sudo yum install MariaDB-server MariaDB-client

پس از نصب MariaDB ممکن است از شما یک رمز عبور جدید برای حساب کاربری root بخواهد. پس از تعیین رمز جدید، بازیابی فایل پشتیبان my.cnf را فراموش نکنید.

بااستفاده از دستور زیر، فایل پشتیبان را my.cnf را بازیابی کنید:

$ sudo cp /opt/my.cnf /etc/mysql/

به‌عنوان خیر مقدمی به MariaDB برای راه‌اندازی فعالیتش می‌توانید یکی از دستورات زیر را به‌کار ببرید:

$ sudo service mariadb start

$ sudo systemctl start mariadb

$ sudo /etc/init.d/mariadb start

مرحله چهارم: فایل بکاپ را آپلود کنید

در آخرین مرحله از انتقال دیتابیس MySQL و MariaDB بین سرور، با دستور زیر محتویات فایل بکاپ را وارد MariaDB خواهید کرد:

$ mysql -u root -p < backupdb.sql

به محض وارد کردن رمز عبورتان، فرایند انتقال پایگاه داده MySQL و MariaDB آغاز خواهد شد. پس از انتقال، نیاز است تفاوت‌های احتمالی که ممکن است در MySQL و MariaDB وجود داشته باشد، بررسی کرده و اصلاح کنید. این تفاوت‌ها اغلب در توابع یا جدول‌ها وجود دارد. درنهایت، برای اطمینان از موفقیت‌آمیز بودن مراحل انتقال، دستور زیر را وارد کنید:

$ mysql -u root -p

MariaDB [(none)]> show databases;

MariaDB [(none)]> use test01;

MariaDB [test01]> select * from pet;
انتقال دیتابیس MySQL و MariaDB
آپلود فایل بکاپ در MariaDB

نحوه تغییر MySQL به MariaDB از طریق phpmyadmin

درصورتی‌که از فضای phpmyadmin استفاده می‌کنید، سه مرحله سریع و راحت برای تغییر MySQL به MariaDB پیش‌رو خواهید داشت. برای انتقال دیتابیس MySQL و MariaDB مراحل زیر را در پیش بگیرید:

مرحله اول: بکاپ‌گیری از دیتابیس با استفاده از phpmyadmin

اگر به Phpmyadmin دسترسی دارید، برای تغییر از MySQL به MariaDB نیاز است روی سیستم خود یکی از شبیه‌سازهای وب‌سرور مانند wamp یا xampp را نصب کنید. این نرم‌افزارها به‌صورت پیش‌فرض ابزارهایی مانند phpmyadmin ،MySQL و MariaDB را در اختیار دارند. برای استفاده از این روش به صورت زیر عمل کنید:

گام اول: وارد phpmyadmin شوید

در اولین گام ابتدا نیاز است MySQL را اجرا کرده و محیط phpmyadmin را باز کنید. اگر از wamp یا xampp استفاده می‌کنید، از طریق آدرس زیر می‌توانید اقدام کنید:

http://localhost/phpMyAdmin

نحوه تغییر MySQL به MariaDB از طریق phpmyadmin
وارد phpmyadmin شوید

گام دوم: دیتابیس موردنظرتان را انتخاب کنید

پس از ورود به محیط Phpmyadmin لیستی از دیتابیس‌های از پیش‌ساخته شده سایت وردپرسی‌تان نمایان خواهد شد. روی دیتابیس موردنظرتان کلیک کنید:

تغییر از MySQL به MariaDB
انتخاب دیتابیس مورد نظر

گام سوم: از دیتابیس بکاپ‌ بگیرید

پس از انتخاب دیتابیس موردنظر، روی گزینه Export در بالای صفحه کلیک کنید. در بخش Format گزینه SQL را انتخاب کنید. بااین‌کار، تعیین می‌کنید دیتابیس از فرمت SQL به MariaDB تغییر کند. سپس روی گزینه Go کلیک کرده تا فایل بکاپ دانلود شود.

انتقال پایگاه داده MySQL و MariaDB
تغییر دیتابیس از فرمت SQL به MariaDB

مرحله دوم: دیتابیس جدید بسازید

وارد محیط phpmyadmin شده و در بخش Server Choice، گزینه MariaDB را انتخاب کنید.

تغییر دیتابیس تغییر MySQL به MariaDB
روی گزینه MariaDB کلیک کنید

پس از ورود به پنل، یک دیتابیس جدید بسازید. این کار را می‌توانید از طریق گزینه New در سمت چپ صفحه انجام دهید. سپس پس از انتخاب اسم دیتابیس روی گزینه Create کلیک کنید.

تغییر دیتابیس سایت از MySQL به MariaDB
برای ساخت دیتابیس روی گزینه Create بزنید

مرحله سوم: محتویات فایل بکاپ را در دیتابیس جدید درون‌ریزی کنید

روی دیتابیس جدید کلیک کنید. سپس از تب Import در منوی بالای صفحه، فایل بکاپ را انتخاب و محتویات آن را در دیتابیس جدید درون‌ریزی کنید.

آموزش Import و Export دیتابیس در MariaDB و MySQL
ایمپورت داده‌های فایل بکاپ در دیتابیس جدید

با کلیک روی Go، عملیات درون‌ریزی آغاز خواهد شد. اگر انتقال پایگاه داده MySQL و MariaDB به‌درستی انجام شود، دراین‌صورت با پیغام زیر روبه‌رو خواهید شد:

 تغییر از MySQL به MariaDB
انتقال پایگاه داده MySQL و MariaDB با موفقیت انجام شد

تغییر MySQL به MariaDB در دایرکت ادمین

در شیوه انتقال دیتابیس MySQL و MariaDB در دایرکت ادمین می‌توانید از دستور SSH به‌صورت مراحلی که در ادامه خواهیم گفت، استفاده کنید. اگر دسترسی به SSH ندارید، از طریق کنترل پنل دایرکت ادمین اقدام کنید. آموزش بکاپ در کنترل پنل دایرکت ادمین را در مقاله «آموزش ریستور بکاپ در دایرکت‌ ادمین» توضیح داده‌ایم.

مرحله اول: تهیه بکاپ در دایرکت ادمین

دستور زیر را برای ایجاد بکاپ در دایرکت ادمین وارد کنید:

cd /usr/local/directadmin/custombuild

./build set mysql_backup yes

./build mysql_backup

مرحله دوم: تغییر نام فایل بکاپ

اکنون با استفاده از دستور زیر نام بکاپ را تغییر دهید:

mv mysql_backups mysql_backups.`date +%F`

./build set mysql_backup no

مرحله سوم: توقف فعالیت MySQL

در سومین مرحله از تغییر MySQL به MariaDB در دایرکت ادمین، از طریق آدرس /var/lib/mysql folder، یک کپی از فایل تهیه کرده و سپس MySQL را با دستور زیر متوقف کنید. درنهایت، با دستور زیر فایل بکاپ را در پوشه دیگری قرار دهید:

perl -pi -e 's/mysqld=ON/mysqld=OFF/' /usr/local/directadmin/data/admin/services.status

service mysqld stop

cd /var/lib

cp -Rp mysql mysql.conversion_backup

مرحله چهارم: نصب MariaDB و بازگردانی بکاپ

از طریق دستور زیر، نصب سیستم مدیریت دیتابیس تازه‌نفس‌مان را انجام خواهیم داد:

build set mariadb 10.5/.

build set mysql_inst mariadb/.

build set mysql_backup yes/.

build update/.

build mariadb/.

درنهایت، می‌توانید با دستور زیر کانفیگ‌های php خود را بررسی کنید:

./build php
تغییر MySQL به MariaDB در دایرکت ادمین
تغییر MySQL به MariaDB در دایرکت ادمین

اگر روال را به‌همین‌ترتیب که برایتان گفتیم، پیش رفته باشید، احتمالاً درحال حاضر از یک سیستم مدیریت محتوای قدرتمند به‌جای MySQL پابه‌سن گذاشته بهره‌مند خواهید شد. در مراحل نصب به مشکل خوردید؟ سوالتان را در انتهای همین مقاله کامنت کنید تا راهنمایی‌تان کنیم.

جمع‌بندی

تغییر MySQL به MariaDB یک فرایند ساده و آسان است؛ بااین‌حال، حتماً نیاز است mysql_upgrade را هنگام انتقال دیتابیس اجرا کنید. در این راهنما، نحوه تغییر MySQL با MariaDB را از طریق سه روش Command Line ،phpmyadmin و دایرکت ادمین بررسی کردیم. به‌طور کلی، برای تغییر MySQL به MariaDB روال زیر را پیش‌رو خواهید داشت:

  • از پایگاه داده نسخه بکاپ تهیه کنید.
  • MariaDB را نصب و MySQL را غیرفعال کنید.
  • یک دیتابیس جدید ساخته و فایل بکاپ را در دیتابیس جدید درون‌ریزی کنید.

درصورتی‌که در این زمینه نیاز به راهنمایی دارید، سوالات و ابهامات خود را می‌توانید در انتهای همین مقاله بنویسید تا کارشناسان پارس پک در سریع‌ترین زمان راهنمایی‌تان کنند. امیدواریم این مقاله در مهاجرت و تغییر از MySQL به MariaDB به شما کمک کرده باشد.

سؤالات متداول

۱. تفاوت MySQL و MariaDB چیست؟

MySQL و MariaDB هر دو سیستم مدیریت پایگاه داده رابطه‌ای (RDBMS) هستند که توسط اوراکل معرفی شدند. MariaDB نسخه توسعه یافته‌ای از MySQL است و ویژگی‌های کاربردی‌تری از MySQL برای بهبود عملکرد مدیریت دیتابیس ارائه می‌دهد.

۲. چگونه می‌توان نسبت به تغییر MySQL به MariaDB اقدام کرد؟

 انتقال دیتابیس MySQL و MariaDB شامل جابه‌جایی داده از MySQL و وارد کردن آن به MariaDB است. فرآیند دقیق این اقدام بستگی به تنظیمات سیستم شما دارد. در این مقاله، روش‌های انتقال با دایرکت ادمین، Command Line و phpmyadmin را گفتیم.

۳. آیا تغییر MySQL به MariaDB باعث بروز ناسازگاری خواهد شد؟

 MariaDB طوری طراحی شده است که سازگاری بالایی با MySQL داشته باشد. بنابراین، در بیشتر موارد، با مشکلات ناسازگاری مواجه نخواهید شد. بااین‌حال، پیش از تغییر در محیط تست MariaDB برنامه‌های خود را امتحان کنید و از عملکرد صحیح آن مطمئن شوید.

منابع:hevodata
mariadb

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


ارسال دیدگاه در وبلاگ پارس‌پک را مطالعه کرده و آن‌ها را می‌پذیرم.