Cách cài đặt MySQL trên CentOS 8
MySQL là một hệ quản trị database open-souce , thường được cài đặt như một phần của ngăn xếp LEMP (Linux, Nginx, MySQL / MariaDB, PHP / Python / Perl) phổ biến. Nó thực hiện mô hình quan hệ và Ngôn ngữ truy vấn có cấu trúc (SQL) để quản lý và truy vấn dữ liệu.Hướng dẫn này giải thích cách cài đặt MySQL version 8 trên server CentOS 8.
Yêu cầu
Để hoàn thành hướng dẫn này, bạn cần một server chạy CentOS 8. Server này phải có user không phải root có quyền quản trị và firewall được cấu hình bằng firewalld
. Để cài đặt điều này, hãy xem hướng dẫn Cài đặt Server Ban đầu của ta cho CentOS 8 .
Bước 1 - Cài đặt MySQL
Trên CentOS 8, MySQL version 8 có sẵn từ repository mặc định .
Chạy lệnh sau để cài đặt gói mysql-server
và một số gói phụ thuộc của nó:
- sudo dnf install mysql-server
Khi được yêu cầu , hãy nhấn y
rồi ENTER
để xác nhận bạn muốn tiếp tục:
Output. . . Install 49 Packages Total download size: 46 M Installed size: 252 M Is this ok [y/N]: y
Cùng với đó, MySQL đã được cài đặt trên server của bạn nhưng nó vẫn chưa hoạt động. Gói bạn vừa cài đặt cấu hình MySQL để chạy dưới dạng dịch vụ systemd
có tên mysqld.service
. Để sử dụng MySQL, bạn cần khởi động nó bằng lệnh systemctl
:
- sudo systemctl start mysqld.service
Để kiểm tra xem dịch vụ có đang chạy chính xác hay không, hãy chạy lệnh sau. Lưu ý đối với nhiều lệnh systemctl
- bao gồm start
và, như được hiển thị ở đây, status
- bạn không cần bao gồm .service
sau tên dịch vụ:
- sudo systemctl status mysqld
Nếu MySQL đã được khởi động thành công, kết quả sẽ hiển thị rằng dịch vụ MySQL đang hoạt động:
Output● mysqld.service - MySQL 8.0 database server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2020-03-12 14:07:41 UTC; 1min 7s ago Main PID: 15723 (mysqld) Status: "Server is operational" Tasks: 38 (limit: 5056) Memory: 474.2M CGroup: /system.slice/mysqld.service └─15723 /usr/libexec/mysqld --basedir=/usr Mar 12 14:07:32 cent-mysql-3 systemd[1]: Starting MySQL 8.0 database server... Mar 12 14:07:32 cent-mysql-3 mysql-prepare-db-dir[15639]: Initializing MySQL database Mar 12 14:07:41 cent-mysql-3 systemd[1]: Started MySQL 8.0 database server.
Tiếp theo, đặt MySQL khởi động khi nào server khởi động bằng lệnh sau:
- sudo systemctl enable mysqld
Lưu ý: Nếu bạn muốn thay đổi hành vi này và tắt MySQL khởi động khi server khởi động , bạn có thể thực hiện bằng cách chạy:
- sudo systemctl disable mysqld
MySQL hiện đã được cài đặt, chạy và kích hoạt trên server của bạn. Tiếp theo, ta sẽ xem xét cách tăng cường bảo mật cho database của bạn bằng cách sử dụng tập lệnh shell được cài đặt sẵn với version MySQL của bạn.
Bước 2 - Bảo mật MySQL
MySQL bao gồm một tập lệnh bảo mật cho phép bạn thay đổi một số tùy chọn cấu hình mặc định để cải thiện tính bảo mật của MySQL.
Để sử dụng tập lệnh bảo mật, hãy chạy lệnh sau:
- sudo mysql_secure_installation
Điều này sẽ đưa bạn qua một loạt dấu nhắc hỏi bạn có muốn áp dụng các thay đổi nhất định đối với các tùy chọn bảo mật của cài đặt MySQL của bạn hay không. Dấu nhắc đầu tiên sẽ hỏi bạn có muốn cài đặt Trình cắm password xác thực, mà bạn có thể sử dụng để kiểm tra độ mạnh của password MySQL của bạn hay không.
Nếu bạn chọn cài đặt Plugin xác thực password , tập lệnh sẽ yêu cầu bạn chọn mức xác thực password . Cấp độ mạnh nhất - mà bạn chọn bằng lệnh 2
- sẽ yêu cầu password của bạn dài ít nhất tám ký tự và bao gồm kết hợp các ký tự viết hoa, viết thường, số và đặc biệt:
OutputSecuring the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PASSWORD COMPONENT can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD component? Press y|Y for Yes, any other key for No: Y There are three levels of password validation policy: LOW Length >= 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2
Dù bạn có chọn cài đặt Trình cắm password xác thực hay không, dấu nhắc tiếp theo sẽ là đặt password cho user gốc MySQL. Nhập và sau đó xác nhận một password an toàn mà bạn chọn:
OutputPlease set the password for root here. New password: Re-enter new password:
Nếu bạn đã sử dụng Plugin xác thực password , bạn sẽ nhận được phản hồi về độ mạnh của password mới của bạn . Sau đó, tập lệnh sẽ hỏi bạn có muốn tiếp tục với password vừa nhập hay bạn muốn nhập password mới. Giả sử bạn hài lòng với độ mạnh của password vừa nhập, hãy nhập Y
để tiếp tục tập lệnh:
OutputEstimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
Sau đó, bạn có thể nhấn Y
và sau đó ENTER
để chấp nhận các 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 root từ xa và tải các luật mới này để MySQL áp dụng ngay những thay đổi bạn đã thực hiện.
Như vậy, bạn đã cài đặt và bảo mật MySQL trên server CentOS 8 của bạn . Bước cuối cùng, ta sẽ kiểm tra xem database có thể truy cập và hoạt động như mong đợi hay không.
Bước 3 - Kiểm tra MySQL
Bạn có thể xác minh cài đặt của bạn và nhận thông tin về nó bằng cách kết nối với công cụ mysqladmin
, một ứng dụng client cho phép bạn chạy các lệnh quản trị. Sử dụng lệnh sau để kết nối với MySQL dưới dạng root ( -u root
), nhắc nhập password ( -p
) và trả về version cài đặt:
- mysqladmin -u root -p version
Bạn sẽ thấy kết quả tương tự như sau:
mysqladmin Ver 8.0.17 for Linux on x86_64 (Source distribution) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Server version 8.0.17 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 2 hours 52 min 37 sec Threads: 2 Questions: 20 Slow queries: 0 Opens: 131 Flush tables: 3 Open tables: 48 Queries per second avg: 0.001
Điều này cho thấy cài đặt của bạn đã thành công.
Nếu bạn muốn kết nối với MySQL và bắt đầu thêm dữ liệu vào đó, hãy chạy như sau:
- mysql -u root -p
Giống như lệnh mysqladmin
trước đó, lệnh này bao gồm tùy chọn -u
, cho phép bạn chỉ định user mà bạn muốn kết nối ( root trong trường hợp này) và tùy chọn -p
, cho lệnh nhắc bạn về password user bạn đã đặt ở bước trước.
Sau khi bạn nhập password user MySQL gốc của bạn , bạn sẽ thấy dấu nhắc MySQL:
-
Từ đó, bạn có thể bắt đầu sử dụng cài đặt MySQL của bạn để tạo và tải database cũng như bắt đầu chạy các truy vấn.
Kết luận
Theo hướng dẫn này, bạn đã cài đặt và bảo mật MySQL trên server CentOS 8. Từ đây, bạn có thể cài đặt Nginx và PHP để có một LEMP hoạt động đầy đủ trên server của bạn .
Để tìm hiểu thêm về cách sử dụng MySQL, ta khuyến khích bạn xem lại tài liệu chính thức .
Các tin liên quan
Cách triển khai phân trang trong MySQL với PHP trên Ubuntu 18.042020-01-29
Cách tối ưu hóa truy vấn MySQL với bộ đệm ProxySQL trên Ubuntu 16.04
2019-12-30
Cách cấu hình Cụm Galera với MySQL trên server Ubuntu 18.04
2019-12-16
Cách quản lý và sử dụng trình kích hoạt database MySQL trên Ubuntu 18.04
2019-12-10
Cách tạo một ứng dụng trích dẫn đầy cảm hứng bằng AdonisJs và MySQL
2019-11-22
Cách cài đặt MySQL mới nhất trên Debian 10
2019-07-25
Cách triển khai ứng dụng cốt lõi ASP.NET với server MySQL bằng Nginx trên Ubuntu 18.04
2019-07-23
Cách tối ưu hóa MySQL với Bộ đệm truy vấn trên Ubuntu 18.04
2019-06-12
Cách di chuyển database MySQL sang PostgreSQL bằng pgLoader
2019-05-28
Cách cấu hình SSL / TLS cho MySQL trên Ubuntu 18.04
2019-05-17