۳ راهکار ساده برای تغییر MySQL به MariaDB
در این مقاله میخوانید
- نگاهی بر سیستمهای مدیریت دیتابیس MySQL و MariaDB
- مهمترین نکات پیش از تغییر MySQL با MariaDB
- انتقال دیتابیس MySQL و MariaDB با استفاده از خط فرمان
- مرحله اول: از دیتابیس خود نسخه پشتیبان تهیه کنید
- مرحله دوم: MySQL را حذف کنید
- مرحله سوم: MariaDB را نصب و راهاندازی کنید
- مرحله چهارم: فایل بکاپ را آپلود کنید
- نحوه تغییر MySQL به MariaDB از طریق phpmyadmin
- تغییر MySQL به MariaDB در دایرکت ادمین
- جمعبندی
- سؤالات متداول
تغییر 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 و نحوه نصب آن بدانید، پیشنهاد میکنیم نگاهی به مقاله زیر بیندازید.
کلیدیترین ویژگی MariaDB
- با انواع زبانهای برنامهنویسی و سیستمعاملهای مختلف سازگار است.
- از موتورهای ذخیرهسازی مختلف از جمله InnoDB، MyRocks و Aria پشتیبانی میکند.
- نسل بهبودیافته MySQL است که بههدف توسعه نسخهای بهتر از MySQL طراحی شده است.
- از پیچیدگی کدسورسهای MySQL فاصله گرفته است و بهراحتی میتوان برنامههایی را که قبلاً روی MySQL وجود داشت، به MariaDB منتقل کرد.
استفاده از MariaDB برخلاف MySQL هیچ هزینهای برایتان ندارد. همچنین از رمزگذاری باینری و جدول موقت برای حفظ امنیت بیشتر بهره برده است.
انتخاب بین MySQL و MariaDB به نیازهای شما بستگی دارد. هر دو سیستم قابلیتهای قدرتمندی دارند که برای مدیریت دیتابیس بهعنوان عصای دست توسعهدهندگان بهخوبی عمل میکنند.
برای آشنایی با ویژگیهای MariaDB، تفاوت آن با MySQL و نحوه نصب و راهاندازی 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
در دستور بالا، نام دیتابیس، نام کاربر دیتابیس و رمزتان را جایگزین کنید. خروجی که به شما نشان خواهد داد، بهصورت زیر خواهد بود:
مرحله اختیاری: ایجاد بکاپ در 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 بدانید را در مقاله زیر بخوانید.
مرحله سوم: MariaDB را نصب و راهاندازی کنید
سراغ قسمت اصلی راهنمای تغییر MySQL به MariaDB میرویم. تا این قسمت از مسیر مهاجرت و تغییر MySQL به MariaDB توانستید از دیتابیس خود نسخه بکاپ تهیه کرده و سرویس MySQL را غیرفعال کنید. اکنون میخواهیم MariaDB تازهنفس را نصب کنیم.
درنظر داشته باشید اگر از آخرین نسخه CentOS یا اوبونتو استفاده میکنید، mariaDB از قبل در مخازن نصبی سیستمعامل شما وجود دارد. برای تهیه 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 از طریق phpmyadmin
درصورتیکه از فضای phpmyadmin استفاده میکنید، سه مرحله سریع و راحت برای تغییر MySQL به MariaDB پیشرو خواهید داشت. برای انتقال دیتابیس MySQL و MariaDB مراحل زیر را در پیش بگیرید:
مرحله اول: بکاپگیری از دیتابیس با استفاده از phpmyadmin
اگر به Phpmyadmin دسترسی دارید، برای تغییر از MySQL به MariaDB نیاز است روی سیستم خود یکی از شبیهسازهای وبسرور مانند wamp یا xampp را نصب کنید. این نرمافزارها بهصورت پیشفرض ابزارهایی مانند phpmyadmin ،MySQL و MariaDB را در اختیار دارند. برای استفاده از این روش به صورت زیر عمل کنید:
گام اول: وارد phpmyadmin شوید
در اولین گام ابتدا نیاز است MySQL را اجرا کرده و محیط phpmyadmin را باز کنید. اگر از wamp یا xampp استفاده میکنید، از طریق آدرس زیر میتوانید اقدام کنید:
http://localhost/phpMyAdmin
گام دوم: دیتابیس موردنظرتان را انتخاب کنید
پس از ورود به محیط Phpmyadmin لیستی از دیتابیسهای از پیشساخته شده سایت وردپرسیتان نمایان خواهد شد. روی دیتابیس موردنظرتان کلیک کنید:
گام سوم: از دیتابیس بکاپ بگیرید
پس از انتخاب دیتابیس موردنظر، روی گزینه Export در بالای صفحه کلیک کنید. در بخش Format گزینه SQL را انتخاب کنید. بااینکار، تعیین میکنید دیتابیس از فرمت SQL به MariaDB تغییر کند. سپس روی گزینه Go کلیک کرده تا فایل بکاپ دانلود شود.
مرحله دوم: دیتابیس جدید بسازید
وارد محیط phpmyadmin شده و در بخش Server Choice، گزینه MariaDB را انتخاب کنید.
پس از ورود به پنل، یک دیتابیس جدید بسازید. این کار را میتوانید از طریق گزینه New در سمت چپ صفحه انجام دهید. سپس پس از انتخاب اسم دیتابیس روی گزینه Create کلیک کنید.
مرحله سوم: محتویات فایل بکاپ را در دیتابیس جدید درونریزی کنید
روی دیتابیس جدید کلیک کنید. سپس از تب Import در منوی بالای صفحه، فایل بکاپ را انتخاب و محتویات آن را در دیتابیس جدید درونریزی کنید.
با کلیک روی Go، عملیات درونریزی آغاز خواهد شد. اگر انتقال پایگاه داده 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 پابهسن گذاشته بهرهمند خواهید شد. در مراحل نصب به مشکل خوردید؟ سوالتان را در انتهای همین مقاله کامنت کنید تا راهنماییتان کنیم.
جمعبندی
تغییر 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 برنامههای خود را امتحان کنید و از عملکرد صحیح آن مطمئن شوید.