آموزش نصب MariaDB در لینوکس (اوبونتو، دبیان و AlmaLinux)



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

این راهنما به صورت جامع، شما را با تمام مراحل نصب، ایمن‌سازی و مدیریت اولیه MariaDB روی تمام توزیع‌های مدرن لینوکس آشنا می‌کند. برای راه‌اندازی یک دیتابیس سرور قدرتمند، خرید سرور مجازی با حافظه SSD/NVMe یک پیش‌نیاز کلیدی است.

 

MariaDB چیست و چه تفاوتی با MySQL دارد؟

 

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

 

مزایا و معایب MariaDB

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

 

بخش اول: نصب MariaDB

 

فرآیند نصب در خانواده‌های مختلف لینوکس کمی متفاوت است.

 

۱. نصب در اوبونتو و دبیان

در این توزیع‌ها، MariaDB در مخازن رسمی موجود است.

sudo apt update
sudo apt install mariadb-server -y

 

۲. نصب در AlmaLinux و Rocky Linux

در توزیع‌های مبتنی بر RHEL نیز، نصب با استفاده از `dnf` به سادگی انجام می‌شود.

sudo dnf install mariadb-server -y

پس از نصب، سرویس را فعال و راه‌اندازی کنید:

sudo systemctl start mariadb
sudo systemctl enable mariadb

 

بخش دوم: ایمن‌سازی اولیه (بسیار مهم)

 

نصب پیش‌فرض MariaDB دارای چندین ضعف امنیتی است (مانند عدم وجود رمز عبور برای root). برای رفع این مشکلات، باید اسکریپت امنیتی همراه آن را اجرا کنید.

sudo mysql_secure_installation

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

  • Enter current password for root (enter for none): کلید Enter را بزنید (چون هنوز رمزی وجود ندارد).
  • Set root password? [Y/n]: Y را تایپ کرده و یک رمز عبور قوی برای کاربر root وارد کنید.
  • Remove anonymous users? [Y/n]: Y را تایپ کنید.
  • Disallow root login remotely? [Y/n]: Y را تایپ کنید (این کار امنیت را به شدت افزایش می‌دهد).
  • Remove test database and access to it? [Y/n]: Y را تایپ کنید.
  • Reload privilege tables now? [Y/n]: Y را تایپ کنید.

 

بخش سوم: مدیریت اولیه و کار با MariaDB

 

۱. ورود به محیط MariaDB

برای ورود به خط فرمان MariaDB با کاربر root، از دستور زیر استفاده کنید:

sudo mysql -u root -p

سپس رمز عبوری را که در مرحله قبل تنظیم کردید، وارد نمایید.

 

۲. مثال کاربردی (Case Study): ساخت یک دیتابیس و کاربر جدید

هرگز از کاربر root برای اپلیکیشن‌های خود استفاده نکنید. همیشه یک کاربر مجزا با دسترسی محدود برای هر پروژه بسازید.

  1. وارد محیط MariaDB شوید.
  2. دستورات زیر را برای ساخت یک دیتابیس و کاربر جدید اجرا کنید (مقادیر را با اطلاعات دلخواه خود جایگزین کنید):
    CREATE DATABASE my_project_db;
    CREATE USER 'my_project_user'@'localhost' IDENTIFIED BY 'your_strong_password';
    GRANT ALL PRIVILEGES ON my_project_db.* TO 'my_project_user'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;

حالا شما یک دیتابیس و کاربر آماده برای استفاده در اپلیکیشن خود دارید.

 

۳. مدیریت سرویس با `systemctl`

برای مدیریت سرویس MariaDB از دستورات استاندارد `systemctl` استفاده کنید:

  • بررسی وضعیت: sudo systemctl status mariadb
  • متوقف کردن: sudo systemctl stop mariadb
  • راه‌اندازی مجدد: sudo systemctl restart mariadb

برای میزبانی دیتابیس‌های مهم، خرید vps آلمان با حافظه NVMe می‌تواند تفاوت چشمگیری در عملکرد ایجاد کند.