Cách cài đặt MariaDB trên Ubuntu 18.04
MariaDB là một hệ quản trị database open-souce , thường được sử dụng như một sự thay thế cho phần MySQL 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-server
bằ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_installation
kè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 18.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 Ubuntu 18.04 được cài đặt theo hướng dẫn cài đặt server ban đầu này , bao gồm user không phải root có quyền
sudo
và firewall .
Bước 1 - Cài đặt MariaDB
Trên Ubuntu 18.04, MariaDB version 10.1 có trong repository APT theo mặc định.
Để 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. Ta sẽ sử dụng nó để chặn đăng nhập root từ xa và xóa những user database không sử dụng.
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ì ta chưa cài đặt một account nào, hãy nhấn ENTER
để biểu thị “không có”.
Dấu nhắc tiếp theo hỏi bạn có muốn cài đặt password gốc database hay không. Gõ N
và sau đó nhấn ENTER
. 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ị. Sau đó, ta sẽ trình bày cách tùy chọn 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.
Bước 3 - (Tùy chọn) Điều chỉnh Xác thực User và Đặc quyền
Trên hệ thống Ubuntu chạy MariaDB 10.1, 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 như vậ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 . Để thực hiện việc này, hãy mở dấu nhắc MariaDB từ terminal của bạn:
- sudo mysql
Bây giờ, ta sẽ tạo một user mới với quyền root và quyền truy cập dựa trên password . 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.1.44 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2020-03-25 16:51:16 UTC; 8min ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 22559 (mysqld) Status: "Taking your SQL requests now..." Tasks: 27 (limit: 1152) CGroup: /system.slice/mariadb.service └─22559 /usr/sbin/mysqld Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: mysql Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: performance_schema Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: Phase 6/7: Checking and upgrading tables Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: Processing databases Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: information_schema Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: performance_schema Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: Phase 7/7: Running 'FLUSH PRIVILEGES' Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: OK Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22658]: Checking for insecure root accounts. Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22663]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables
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 và trả về version bằng cách sử dụng Unix socket:
- sudo mysqladmin version
Bạn sẽ nhận được kết quả tương tự như sau:
Outputmysqladmin Ver 9.1 Distrib 10.1.44-MariaDB, for debian-linux-gnu on x86_64 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Server version 10.1.44-MariaDB-0ubuntu0.18.04.1 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 10 min 9 sec Threads: 1 Questions: 445 Slow queries: 0 Opens: 167 Flush tables: 1 Open tables: 30 Queries per second avg: 0.730
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 MariaDB để hoạt động như một server SQL. Trong quá trình cài đặt, bạn cũng đã bảo mật server . Theo tùy chọn, bạn cũng đã tạo một admin-user xác thực bằng password riêng biệt.
Đế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 :
Bạn cũng có thể kết hợp MariaDB vào một ứng dụng lớn hơn:
Các tin liên quan
Cách cài đặt MariaDB trên Ubuntu 20.042020-05-12
Cách cài đặt MariaDB trên Ubuntu 20.04 [Quickstart]
2020-05-12
Cách nâng cấp lên Ubuntu 20.04 Focal Fossa
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 Java với Apt trên Ubuntu 18.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 Django và thiết lập môi trường phát triển trên Ubuntu 20.04
2020-05-07