Cách cài đặt MariaDB trên Ubuntu 20.04
MariaDB là một hệ quản trị database quan hệ open-souce , thường được sử dụng thay thế cho MySQL như một phần database của ngăn xếp LAMP (Linux, Apache, MySQL, PHP / Python / Perl) phổ biến. Nó được thiết kế để thay thế MySQL.Phiên bản ngắn của hướng dẫn cài đặt này bao gồm ba bước sau:
-  Cập nhật  index gói  của bạn bằng apt
-  Cài đặt gói mariadb-serverbằngapt. Gói này cũng kéo các công cụ liên quan để tương tác với MariaDB
-  Chạy tập lệnh bảo mật mysql_secure_installationkèm để hạn chế quyền truy cập vào server
- sudo apt update 
- sudo apt install mariadb-server 
- sudo mysql_secure_installation 
Hướng dẫn này sẽ giải thích cách cài đặt MariaDB trên server Ubuntu 20.04 và xác minh nó đang chạy và có cấu hình ban đầu an toàn.
Yêu cầu
Để làm theo hướng dẫn này, bạn cần một server chạy Ubuntu 20.04. Server này phải có admin-user không phải root và firewall được cấu hình bằng UFW. Cài đặt điều này theo hướng dẫn cài đặt server ban đầu của ta cho Ubuntu 20.04 .
Bước 1 - Cài đặt MariaDB
Theo văn bản này, repository APT mặc định của Ubuntu 20.04 bao gồm MariaDB version 10.3 .
 Để cài đặt nó, hãy cập nhật  index gói  trên  server  của bạn với apt :
- sudo apt update 
Sau đó cài đặt gói:
- sudo apt install mariadb-server 
Các lệnh này sẽ cài đặt MariaDB, nhưng sẽ không nhắc bạn đặt password  hoặc thực hiện bất kỳ thay đổi cấu hình nào khác. Vì cấu hình mặc định khiến cài đặt MariaDB của bạn không an toàn,  ta  sẽ sử dụng tập lệnh mà gói mariadb-server cung cấp để hạn chế quyền truy cập vào  server  và xóa các account  không sử dụng.
Bước 2 - Cấu hình MariaDB
Đối với cài đặt MariaDB mới, bước tiếp theo là chạy tập lệnh bảo mật đi kèm. Tập lệnh này thay đổi một số tùy chọn mặc định kém an toàn hơn như thông tin đăng nhập gốc từ xa và user mẫu.
Chạy tập lệnh bảo mật:
- sudo mysql_secure_installation 
Điều này sẽ đưa bạn qua một loạt  dấu nhắc  mà bạn có thể thực hiện một số thay đổi đối với các tùy chọn bảo mật của cài đặt MariaDB  của bạn .  Dấu nhắc  đầu tiên sẽ yêu cầu bạn nhập password  gốc của database  hiện tại. Vì bạn chưa  cài đặt  account  nào, hãy nhấn ENTER để biểu thị “không có”.
OutputNOTE: 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, we'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):   Dấu nhắc  tiếp theo hỏi bạn có muốn  cài đặt  password  gốc database  hay không. Trên Ubuntu, account  gốc cho MariaDB được gắn chặt với bảo trì hệ thống tự động, vì vậy  ta  không nên thay đổi các phương thức xác thực đã  cấu hình  cho account  đó. Làm như vậy sẽ làm cho bản cập nhật gói có thể phá vỡ hệ thống database  bằng cách xóa quyền truy cập vào account  quản trị. Gõ N và sau đó nhấ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 Sau đó, ta sẽ trình bày cách cài đặt account quản trị bổ sung để truy cập password nếu xác thực socket không phù hợp với trường hợp sử dụng của bạn.
 Từ đó, bạn có thể nhấn Y rồi ENTER để chấp nhận giá trị mặc định cho tất cả các câu hỏi tiếp theo. Thao tác này sẽ xóa một số  user  ẩn danh và database  thử nghiệm, vô hiệu hóa đăng nhập gốc từ xa và tải các  luật  mới này để MariaDB ngay lập tức  áp dụng các thay đổi  bạn đã thực hiện.
Như vậy, bạn đã hoàn thành cấu hình bảo mật ban đầu của MariaDB. Bước tiếp theo là bước không bắt buộc, tuy nhiên bạn nên làm theo nếu muốn xác thực server MariaDB của bạn bằng password .
Bước 3 - (Tùy chọn) Tạo admin-user sử dụng xác thực password
 Trên các hệ thống Ubuntu chạy MariaDB 10.3,  user  MariaDB gốc được đặt để xác thực bằng plugin unix_socket theo mặc định chứ không phải bằng password . Điều này cho phép một số bảo mật và  hữu dụng  trong nhiều trường hợp, nhưng nó cũng có thể  làm phức tạp thêm  khi bạn cần cho phép một chương trình bên ngoài (ví dụ: phpMyAdmin) quyền quản trị.
 Vì  server  sử dụng account  gốc cho  các việc  như xoay vòng log  và khởi động và dừng  server , tốt nhất là không thay đổi chi tiết xác thực của account  gốc . Thay đổi thông tin xác thực trong file  cấu hình /etc/mysql/debian.cnf có thể hoạt động ban đầu, nhưng các bản cập nhật gói có thể có khả năng overrides  những thay đổi đó. Thay vì sửa đổi account  gốc , những người bảo trì gói khuyến nghị tạo một account  quản trị riêng để truy cập dựa trên password .
Để làm được điều này, ta sẽ tạo một account mới có tên là admin với các khả năng tương tự như account gốc , nhưng được cấu hình để xác thực password . Mở dấu nhắc MariaDB từ terminal của bạn:
- sudo mariadb 
Sau đó, tạo một user mới với quyền root và quyền truy cập dựa trên password . Đảm bảo thay đổi tên user và password để phù hợp với sở thích của bạn:
- GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION; 
Xóa các quyền đảm bảo rằng chúng được lưu và khả dụng trong phiên hiện tại:
- FLUSH PRIVILEGES; 
Sau đó, thoát khỏi shell MariaDB:
- exit 
Cuối cùng, hãy kiểm tra cài đặt MariaDB.
Bước 4 - Kiểm tra MariaDB
Khi được cài đặt từ repository mặc định , MariaDB sẽ bắt đầu chạy tự động. Để kiểm tra điều này, hãy kiểm tra trạng thái của nó.
- sudo systemctl status mariadb 
Bạn sẽ nhận được kết quả tương tự như sau:
Output● mariadb.service - MariaDB 10.3.22 database server      Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)      Active: active (running) since Tue 2020-05-12 13:38:18 UTC; 3min 55s ago        Docs: man:mysqld(8)              https://mariadb.com/kb/en/library/systemd/    Main PID: 25914 (mysqld)      Status: "Taking your SQL requests now..."       Tasks: 31 (limit: 2345)      Memory: 65.6M      CGroup: /system.slice/mariadb.service              └─25914 /usr/sbin/mysqld . . . Nếu MariaDB không chạy, bạn có thể khởi động nó bằng lệnh sudo systemctl start mariadb .
 Để kiểm tra thêm, bạn có thể thử kết nối với database  bằng công cụ mysqladmin , là một  ứng dụng client  cho phép bạn chạy các lệnh quản trị. Ví dụ: lệnh này cho biết kết nối với MariaDB dưới dạng root bằng cách sử dụng Unix socket và trả về version :
- sudo mysqladmin version 
Bạn sẽ nhận được kết quả tương tự như sau:
Outputmysqladmin  Ver 9.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu on x86_64 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.  Server version      10.3.22-MariaDB-1ubuntu1 Protocol version    10 Connection      Localhost via UNIX socket UNIX socket     /var/run/mysqld/mysqld.sock Uptime:         4 min 49 sec  Threads: 7  Questions: 467  Slow queries: 0  Opens: 177  Flush tables: 1  Open tables: 31  Queries per second avg: 1.615 Nếu bạn đã cấu hình admin-user riêng biệt với xác thực password , bạn có thể thực hiện thao tác tương tự bằng lệnh :
- mysqladmin -u admin -p version 
Điều này nghĩa là MariaDB đang hoạt động và user của bạn có thể xác thực thành công.
Kết luận
 Trong hướng dẫn này, bạn đã cài đặt hệ thống quản lý database  quan hệ MariaDB và bảo mật nó bằng cách sử dụng tập lệnh mysql_secure_installation được cài đặt kèm theo. Bạn cũng có tùy chọn tạo  admin-user  mới sử dụng xác thực password  trước khi kiểm tra chức năng của  server  MariaDB.
Đến đây bạn có một server MariaDB đang chạy và an toàn, đây là một số ví dụ về các bước tiếp theo mà bạn có thể thực hiện để làm việc với server :
- Tìm hiểu cách nhập và xuất database
- Thực hành chạy truy vấn SQL
- Kết hợp MariaDB vào một ứng dụng lớn hơn
Các tin liên quan
Cách nâng cấp lên Ubuntu 20.04 Focal Fossa2020-05-12
Cách cài đặt MariaDB trên Ubuntu 18.04
2020-05-12
Cách cài đặt MariaDB trên Ubuntu 20.04 [Quickstart]
2020-05-12
Cách cài đặt và cấu hình VNC trên Ubuntu 20.04
2020-05-11
Cách cài đặt và cấu hình VNC trên Ubuntu 20.04 [Quickstart]
2020-05-11
Cách cài đặt Node.js trên Ubuntu 20.04
2020-05-08
Cách cài đặt và cấu hình VNC trên Ubuntu 18.04
2020-05-07
Cách cài đặt Django và thiết lập môi trường phát triển trên Ubuntu 20.04
2020-05-07
Cách cài đặt Java với Apt trên Ubuntu 20.04
2020-05-07
Cách cài đặt Java với Apt trên Ubuntu 18.04
2020-05-07
 

