مقالات

آموزش نصب MariaDB روی اوبونتو

نصب ماریا دی بی روی اوبونتو ۲۲.۰۴ چگونه است؟ آیا با مراحل آموزش نصب MariaDB آشنایی دارید؟

ماریا دی بی (MariaDB) یک پایگاه‌ داده رایگان و منبع‌باز است که ابتدا در سال ۲۰۰۹ توسعه یافت. این ابزار می‌تواند جایگزینی برای MySQL باشد. MariaDB به زبان‌های C ،C++ ،Perl و Bash نوشته شده است.

در این مقاله آموزشی از بلاگ ابر زس قصد داریم به آموزش نصب MariaDB به‌صورت گام‌به‌گام روی سیستم‌عامل اوبونتو 22.04 بپردازیم.

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

  • پکیج ایندکس خود را با استفاده از دستور apt به‌روزرسانی کنید.
  • پکیج mariadb-server را با استفاده از apt نصب کنید. این پکیج ابزارهای مورد نیاز برای برای تعامل با MariaDB را ارائه می‌کند.
  •  برای محدود کردن دسترسی به سرور، اسکریپت امنیتی mysql_secure_installation را اجرا کنید.
sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation

پیش‌نیازها:

برای دنبال کردن آموزش نصب ماریا دی بی به سروری نیاز دارید که اوبونتو ۲۲.۰۴ را اجرا کند. این سرور باید یک یوزر غیر روت داشته باشد و یک فایروال UFW (ابزار ساده و پیش‌فرض اوبونتو برای پیکربندی فایروال) برای آن پیکربندی شده باشد.

مرحله اول: نصب MariaDB

در این مقاله، ریپازیتوری APT پیش‌فرض اوبونتو ۲۲.۰۴ شامل نسخه 10.5.12 MariaDB است.

برای نصب ماریا دی بی، ابتدا باید پکیج را در سرور خود با استفاده از apt به‌روزرسانی کنید:

sudo apt update

سپس با استفاده از دستور زیر بسته یا پکیج را نصب کنید:

sudo apt install mariadb-server

این دستورات MariaDB را نصب می‌کنند، اما در این مرحله از شما خواسته نمی‌شود که رمز عبور تعیین کنید یا تغییراتی در پیکربندی انجام دهید. ازآنجایی‌که پیکربندی پیش‌فرض، نصب MariaDB را ناامن می‌کند، از اسکریپتی استفاده کنید که پکیج mariadb-server را برای محدود کردن دسترسی به سرور و حذف حساب‌های استفاده نشده فراهم می‌کند.

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

در این مرحله از آموزش نصب ماریا دی بی باید اسکریپت امنیتی موجود را اجرا کنید. این اسکریپت برخی از گزینه‌های پیش‌فرض ناامن را برای مواردی مانند لاگین از راه دور روت و نمونه کاربران تغییر می‌دهد.

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

sudo mysql_secure_installation

اکنون با استفاده از دستورات زیر می‌توانید تغییراتی در گزینه‌های امنیتی نصب MariaDB ایجاد کنید. اولین درخواست از شما می‌خواهد رمز عبور فعلی روت دیتابیس را وارد کنید. ازآنجایی‌که شما هنوز پسوردی را تنظیم نکرده‌اید، کلید ENTER را فشار دهید تا none را نشان دهید.

Output
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, you'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):

از شما پرسیده می‌شود که آیا می‌خواهید به احراز هویت سوکت یونیکس (unix socket authentication) سوئیچ کنید. ازآنجایی‌که از قبل یک حساب روت محافظت شده دارید، می‌توانید این مرحله را نادیده بگیرید. حرف n را تایپ کرده و سپس ENTER را فشار دهید.

Output
. . .
Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] n

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

Output
. . .
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] n

به این نکته دقت کنید، درصورتی‌که احراز هویت سوکت برای استفاده شما مناسب نبود، می‌توانید یک اکانت administrative دیگر برای دسترسی با رمز عبور ایجاد کنید. در مرحله بعد در این مورد توضیح می‌دهیم.

در نهایت می‌توانید حرف  Y و سپس ENTER را فشار دهید تا تمامی پیش‌فرض‌ها را برای سؤالات بعدی بپذیرید. با این کار برخی از کاربران ناشناس و پایگاه‌ داده آزمایشی حذف و لاگین‌های از راه دور روت غیرفعال شده و قوانین جدید بارگیری می‌شود تا MariaDB فوراً تغییراتی را که ایجاد کرده‌اید، پیاده‌سازی کند.

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

بیشتر بخوانید: ماریا دی بی چیست؟

مرحله سوم (اختیاری): ایجاد یک یوزر Administrative که از احراز هویت رمز عبور استفاده می‌کند

در سیستم‌های اوبونتو که MariaDB 10.5 را اجرا می‌کنند، یوزر روت MariaDB به طور پیش‌فرض، به جای رمز عبور، با استفاده از پلاگین unix_socket احراز هویت می‌شود. این امر در بسیاری از موارد امنیت و قابلیت‌های استفاده بیشتر را فراهم می‌کند، اما می‌تواند در مواردی که نیاز به امتیازات مدیریتی برای اجازه دادن به یک برنامه خارجی (مانند phpMyAdmin) را دارید، شرایط را پیچیده‌تر کند.

دقت کنید که سرور از اکانت روت برای مواردی مانند گردش لاگ، راه‌اندازی و توقف سرور استفاده می‌کند، به همین دلیل بهتر است جزئیات احراز هویت اکانت روت را تغییر ندهید. تغییر گواهی‌نامه‌ها در فایل پیکربندی /etc/mysql/debian.cnf ممکن است در ابتدا کار کند، اما به‌روزرسانی‌های پکیج می‌توانند این تغییرات را بازنویسی کنند. به‌جای تغییر اکانت روت، پیشنهاد می‌شود یک اکانت جداگانه administrative برای دسترسی مبتنی بر رمز عبور ایجاد کنید.

برای این منظور، یک حساب کاربری جدید به نام admin با همان قابلیت‌های اکانت root اما برای احراز هویت از طریق رمز عبور ایجاد کنید. برای انجام این کار ابتدا prompt ماریا دی بی را باید از ترمینال خود باز کنید:

sudo mariadb

سپس با استفاده از دستور زیر، یک کاربر جدید با امتیازات روت و دسترسی مبتنی بر رمز عبور ایجاد کنید. حتماً نام کاربری و رمز عبور را تغییر دهید تا با تنظیمات شما مطابقت داشته باشد:

MariaDB [(none)]> GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

برای اطمینان از ذخیره و دردسترس‌بودن سطوح دسترسی در نشست فعلی،  در current session، آنها را فلاش کنید:

MariaDB [(none)]> FLUSH PRIVILEGES;

سپس از دستور زیر برای خارج شدن از shell ماریا دی بی استفاده کنید:

MariaDB [(none)]> exit

در نهایت نصب ماریا دی بی را آزمایش کنید.

مرحله چهارم – تست نصب ماریا دی بی

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

sudo systemctl status mariadb

اکنون خروجی مشابه موارد زیر را دریافت خواهید کرد:

Output
● mariadb.service - MariaDB 10.5.12 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2023-03-11 22:01:33 UTC; 16min ago
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
. . .

دقت کنید که اگر MariaDB در حال اجرا نیست، می‌توانید آن را با دستور  sudo systemctl start mariadb اجرا کنید.

برای بررسی بیشتر، می‌توانید با استفاده از ابزار mysqladmin که یک کلاینت است و به شما امکان اجرای دستورات مدیریتی را می‌دهد، به پایگاه‌ داده متصل شوید. به‌عنوان‌مثال، این دستور می‌گوید که با استفاده از سوکت یونیکس به‌عنوان root به MariaDB متصل شوید و نسخه را برگردانید:

sudo mysqladmin version

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

Output
mysqladmin  Ver 9.1 Distrib 10.5.12-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Server version        10.5.12-MariaDB-1build1
Protocol version    10
Connection        Localhost via UNIX socket
UNIX socket        /run/mysqld/mysqld.sock
Uptime:            22 min 12 sec

Threads: 1  Questions: 482  Slow queries: 0  Opens: 171  Open tables: 28  Queries per second avg: 0.505

جمع‌بندی

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

همچنین یاد گرفتید که چگونه می‌توانید یک یوزر Administrative ایجاد کنید که از احراز هویت رمز عبور استفاده می‌کند. اکنون شما یک سرور MariaDB در حال اجرا و ایمن دارید.

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

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

نشانی ایمیل شما منتشر نخواهد شد.

دکمه بازگشت به بالا

دریافت سرویس تست رایگان

ارتباط با ابر زَس

تلفن:        91078149 –  021

ایمیل:       Sales@XaaS.ir