Lệnh mysql_secure_installation không tìm thấy centos 8

Khi quá trình cài đặt hoàn tất, hãy khởi động dịch vụ MySQL và cho phép nó tự động khởi động khi khởi động với

sudo systemctl enable mysqld
sudo systemctl start mysqld

Chúng tôi có thể kiểm tra trạng thái dịch vụ MySQL bằng cách gõ

sudo systemctl status mysqld

đầu ra

mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2021-05-1 11:02:43 UTC; 14min ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 4293 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 4310 (mysqld)
   Status: "SERVER_OPERATING"
   CGroup: /system.slice/mysqld.service
           └─4310 /usr/sbin/mysqld

Bảo mật MySQL

Khi máy chủ MySQL được khởi động lần đầu tiên, mật khẩu tạm thời được tạo cho người dùng root MySQL. Bạn có thể tìm thấy mật khẩu bằng cách chạy lệnh sau

sudo grep 'temporary password' /var/log/mysqld.log

Đầu ra sẽ trông giống như thế này

2020-05-1T10:59:51.251159Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: x#0)B&?rpkra

Ghi lại mật khẩu, vì lệnh tiếp theo sẽ yêu cầu bạn nhập mật khẩu gốc tạm thời.
Chạy lệnh mysql_secure_installation để cải thiện tính bảo mật cho quá trình cài đặt MySQL của chúng ta.

sudo mysql_secure_installation

đầu ra

Securing the MySQL server deployment.

Enter password for user root:

Sau khi nhập mật khẩu tạm thời, bạn sẽ được yêu cầu đặt mật khẩu mới cho người dùng root. Mật khẩu cần dài ít nhất 8 ký tự và chứa ít nhất một chữ hoa, một chữ thường, một số và một ký tự đặc biệt.
Đầu ra

The existing password for the user account root has expired. Please set a new password.

New password:

Re-enter new password:

Tập lệnh cũng sẽ yêu cầu bạn xóa người dùng ẩn danh, hạn chế quyền truy cập của người dùng root vào máy cục bộ và xóa cơ sở dữ liệu thử nghiệm. Bạn nên trả lời “Y” (có) cho tất cả các câu hỏi

Kết nối với MySQL từ dòng lệnh

Để tương tác với MySQL thông qua thiết bị đầu cuối, chúng tôi sẽ sử dụng ứng dụng khách MySQL được cài đặt như một phần phụ thuộc của gói máy chủ MySQL.
Để đăng nhập vào máy chủ MySQL với tư cách người dùng root, hãy nhập.

sudo yum install mysql-community-server
0

Bạn sẽ được nhắc nhập mật khẩu gốc mà bạn đã đặt trước đó khi tập lệnh mysql_secure_installation được chạy.
Sau khi nhập mật khẩu, bạn sẽ thấy trình bao mysql như hình bên dưới.
Đầu ra

sudo yum install mysql-community-server
1

Tạo cơ sở dữ liệu

Khi bạn đã kết nối với MySQL shell, bạn có thể tạo cơ sở dữ liệu mới bằng cách gõ lệnh sau

sudo yum install mysql-community-server
2

Tạo bảng

Bây giờ chúng ta đã tạo một cơ sở dữ liệu, chúng ta có thể tạo một bảng để lưu trữ một số dữ liệu.
Trước khi chạy các câu lệnh SQL để tạo bảng chúng ta cần kết nối với cơ sở dữ liệu.

sudo yum install mysql-community-server
3

Trong ví dụ này, chúng tôi sẽ tạo một bảng đơn giản có tên là danh bạ với ba trường id, tên và email

sudo yum install mysql-community-server
4
sudo yum install mysql-community-server
5

Phần kết luận

Trong hướng dẫn này, chúng tôi đã chỉ cho bạn cách cài đặt và bảo mật máy chủ MySQL trên máy chủ CentOS 7. Chúng tôi cũng đã chỉ cho bạn cách kết nối với trình bao MySQL và cách tạo cơ sở dữ liệu và bảng mới

MySQL được biết đến là hệ quản trị cơ sở dữ liệu mã nguồn mở nổi tiếng và được sử dụng rộng rãi nhất trên thế giới. Nó là một RDBMS (Hệ thống quản lý cơ sở dữ liệu quan hệ) được sử dụng đằng sau các trang web và ứng dụng máy chủ. Phiên bản mới nhất của MySQL là 8. 0 và có sẵn trong kho DNF mặc định của CentOS 8 nên không cần thêm kho MYSQL rồi mới cài

MySQL cung cấp nhiều tính năng mới trong phiên bản 8. 0 để nâng cao hiệu suất của các ứng dụng web. Là một nhà phát triển web và chủ yếu là một nhà phát triển back-end, biết MySQL là một hệ thống cơ sở dữ liệu phải biết cho bạn. Cách tốt nhất để học MySQL là học nó từ Tài liệu chính thức về MySQL

Trong bài đăng này, chúng ta sẽ tìm hiểu quá trình cài đặt và cấu hình MySQL v8. 0 trên Hệ điều hành CentOS 8 và chúng ta sẽ tìm hiểu về cách sử dụng MySQL DB trên CentOS 8. Hãy bắt đầu với việc cài đặt MySQL trên CentOS 8

Cài đặt MySQL 8. 0 trên CentOS 8

Kể từ MySQL 8. 0 đã có sẵn trong kho lưu trữ gói chính thức của CentOS 8, vì vậy chúng tôi có thể tải xuống và cài đặt nó từ đó bằng cách sử dụng lệnh được cung cấp bên dưới

$ sudo dnf cài đặt @mysql

Lệnh mysql_secure_installation không tìm thấy centos 8

Trong lệnh trên, @mysql là một mô-đun sẽ tải xuống và cài đặt máy chủ MySQL và các phụ thuộc của nó cùng với nó

Lệnh mysql_secure_installation không tìm thấy centos 8

Sau khi cài đặt thành công MySQL server 8. 0, quá trình cài đặt có thể được xác nhận bằng cách thực hiện lệnh được nhập bên dưới

$ mysql --phiên bản

Lệnh mysql_secure_installation không tìm thấy centos 8

Bạn có thể xác minh bằng cách xem ảnh chụp màn hình đính kèm ở trên phiên bản 8 đó. 0. 21 được cài đặt thành công trên hệ điều hành CentOS 8

Mặc dù MySQL 8. 0 được cài đặt, nó không hoạt động đầy đủ. Vậy bây giờ, hãy cùng tìm hiểu cách khởi động dịch vụ MySQL trên CentOS 8

Bắt đầu dịch vụ MySQL và kiểm tra trạng thái của nó

Nếu không bắt đầu dịch vụ MySQL, chúng tôi sẽ không thể sử dụng MySQL. Vì vậy, mysqld. dịch vụ có thể được bắt đầu bằng lệnh systemctl được hiển thị bên dưới

$ sudo systemctl start mysqld. dịch vụ

Lệnh mysql_secure_installation không tìm thấy centos 8

Sau khi bắt đầu dịch vụ, thiết bị đầu cuối sẽ không hiển thị bất kỳ đầu ra nào nếu dịch vụ được khởi động thành công

Để xác minh mysqld. dịch vụ có được bắt đầu hay không, bạn có thể thực hiện lệnh được nhập bên dưới

$ sudo systemctl status mysqld

Lệnh mysql_secure_installation không tìm thấy centos 8

Trong lệnh trên, nếu bạn để ý, chúng tôi đã không sử dụng. dịch vụ sau mysqld. Câu trả lời cho sự tò mò này là trong nhiều lệnh systemctl, chúng ta không bắt buộc phải sử dụng. dịch vụ sau tên của mỗi dịch vụ. Chúng tôi có thể bắt đầu hoặc kiểm tra trạng thái của bất kỳ dịch vụ nào mà không cần đề cập đến. dịch vụ sau tên của dịch vụ

Trong ảnh chụp màn hình đầu ra ở trên của lệnh systemctl status, có thể thấy rằng mysqld. dịch vụ đang chạy

Nếu bạn không muốn khởi động lại nhiều lần khi cần, tốt hơn hết là bật dịch vụ khi máy khởi động. Để kích hoạt mysqld. service khi khởi động hệ thống, hãy chạy lệnh

$ sudo systemctl bật mysqld

Lệnh mysql_secure_installation không tìm thấy centos 8

Tuy nhiên, nếu bạn lo lắng về thời gian khởi động và không muốn chạy quá nhiều dịch vụ khi khởi động, bạn có thể vô hiệu hóa các dịch vụ bất cứ lúc nào bằng lệnh systemctl

Trong trường hợp như vậy, nếu bạn muốn tắt mysqld. dịch vụ, hãy chạy lệnh dưới đây

$ sudo systemctl vô hiệu hóa mysqld

Khi máy chủ MySQL được cài đặt và mysqld. dịch vụ được khởi động, kích hoạt và chạy hoàn toàn bình thường trên hệ điều hành CentOS 8, hãy tìm hiểu cách bảo mật, định cấu hình và thiết lập MySQL trên CentOS 8

Làm cách nào để định cấu hình MySQL?

Bước đầu tiên trong cấu hình MYSQL là bảo mật MySQL

Bảo mật MySQL

MySQL đi kèm với một tập lệnh bảo mật giúp thay đổi và bảo mật các cài đặt và cấu hình mặc định của MySQL

Để bắt đầu cài đặt bảo mật MySQL, hãy thực hiện lệnh được cung cấp bên dưới trong thiết bị đầu cuối của CentOS 8

$ sudo mysql_secure_installation

Nó sẽ bắt đầu nhắc các câu hỏi liên quan đến cài đặt bảo mật của MySQL, vì vậy hãy trả lời tương ứng theo mong muốn của bạn

Lệnh mysql_secure_installation không tìm thấy centos 8

Thiết lập plugin xác thực mật khẩu để kiểm tra độ mạnh của mật khẩu MySQL và chọn cấp độ xác thực mật khẩu

Lệnh mysql_secure_installation không tìm thấy centos 8

Đặt mật khẩu cho người dùng root của MySQL

Lệnh mysql_secure_installation không tìm thấy centos 8

Nếu mật khẩu của bạn yếu, Plugin Xác thực mật khẩu sẽ yêu cầu bạn làm cho nó mạnh mẽ và an toàn hơn. Ngược lại, trong giai đoạn xác nhận mật khẩu, hãy nhập “Y” và nhấn “Enter” để tiếp tục nếu bạn hài lòng

Lệnh mysql_secure_installation không tìm thấy centos 8

Sau đó, bạn có thể chấp nhận các giá trị mặc định và tiếp tục cài đặt bảo mật MySQL

Lệnh mysql_secure_installation không tìm thấy centos 8

Khi mọi thứ đã được thiết lập, bảo mật và định cấu hình, hãy kết nối với MySQL, đăng nhập vào MySQL shell và bắt đầu tìm hiểu cách sử dụng của nó

Đăng nhập vào MySQL

Để kết nối với cơ sở dữ liệu MySQL trong Hệ điều hành CentoS 8, hãy thực hiện lệnh được nhập bên dưới để đăng nhập vào trình bao MySQL

$ sudo mysql -u root -p

Trong lệnh trên

-u root được sử dụng để kết nối với cơ sở dữ liệu MySQL và đăng nhập với tư cách người dùng root

-p được sử dụng để nhắc mật khẩu của người dùng

Sau khi thực hiện lệnh trên, nó sẽ hỏi mật khẩu root mà bạn vừa đặt cho MYSQL

Lệnh mysql_secure_installation không tìm thấy centos 8

Vì vậy, hãy cung cấp mật khẩu của người dùng root và nhấn Enter để đăng nhập vào MySQL shell

Sau khi đăng nhập với tư cách là người dùng MySQL root, giao diện MySQL sẽ trông như thế này

Lệnh mysql_secure_installation không tìm thấy centos 8

Bây giờ, hệ thống cơ sở dữ liệu MySQL đã sẵn sàng phục vụ. Bạn có thể thực hiện bất kỳ tác vụ nào liên quan đến cơ sở dữ liệu của mình và thực hiện các truy vấn như tạo cơ sở dữ liệu, tạo bảng, thêm một số dữ liệu vào bảng, v.v.

Tạo cơ sở dữ liệu MySQL mới

Vì bạn đã đăng nhập với tư cách người dùng root, nên bạn có quyền truy cập để làm bất cứ điều gì bạn muốn, chẳng hạn như đặc quyền cho tất cả cơ sở dữ liệu và áp dụng các hạn chế hoặc cấp đặc quyền của cơ sở dữ liệu hoặc bảng cho người dùng

Trước tiên hãy bắt đầu với việc tạo cơ sở dữ liệu. Một cơ sở dữ liệu có thể được tạo bằng cách sử dụng lệnh CREATE DATABASE trong MySQL. Ví dụ: để tạo một cơ sở dữ liệu mới có tên là “first_db”, lệnh CREATE DATABASE sẽ như sau

mysql > TẠO CƠ SỞ DỮ LIỆU first_db;

Lệnh mysql_secure_installation không tìm thấy centos 8

Cơ sở dữ liệu 'first_db' sẽ được tạo

Hiển thị cơ sở dữ liệu MySQL

Để liệt kê tất cả các cơ sở dữ liệu trong MySQL, lệnh SHOW DATABASES được sử dụng. Vì vậy, nếu chúng ta thực thi lệnh SHOW DATABASES trong MySQL shell

$ HIỂN THỊ CƠ SỞ DỮ LIỆU;

Lệnh mysql_secure_installation không tìm thấy centos 8

Bạn có thể chứng kiến ​​lệnh SHOW DATABASES trong đầu ra của lệnh SHOW DATABASES mà tất cả các cơ sở dữ liệu và cơ sở dữ liệu “first_db” được tạo gần đây của chúng tôi được liệt kê

Tạo một người dùng MySQL mới

Một người dùng mới trong MySQL có thể được tạo bằng lệnh CREATE USER. Ví dụ: nếu chúng ta muốn tạo một người dùng mới có tên là “first_user”, lệnh CREATE USER sẽ như sau

mysql > TẠO NGƯỜI DÙNG 'first_user'@<'localhost' IDENTIFIED BY 'first_user_password';

Lệnh mysql_secure_installation không tìm thấy centos 8

Trong lệnh trên, bạn có thể cung cấp tên người dùng và mật khẩu mà bạn muốn đặt

Các lệnh MySQL chính

Tương tự, có nhiều lệnh MySQL khác nhau được sử dụng để thực hiện nhiều tác vụ liên quan đến cơ sở dữ liệu. Chúng tôi không thể giải thích tất cả các lệnh;

  • Ví dụ: CREATE – để tạo Cơ sở dữ liệu hoặc Bảng
  • CHỌN – để đọc dữ liệu từ các Bảng
  • INSERT – để thêm dữ liệu hoặc hàng vào Bảng
  • CẬP NHẬT – để cập nhật dữ liệu trong các hàng của Bảng
  • DROP – để xóa Cơ sở dữ liệu hoặc Bảng
  • XÓA – để xóa các hàng khỏi Bảng
  • TÙY CHỌN CẤP – để cấp đặc quyền cho Người dùng

Phần kết luận

Bài đăng này chứa kiến ​​thức chuyên sâu và sâu sắc về cách cài đặt, định cấu hình và bắt đầu sử dụng MYSQL trên CentOS 8. Bạn đã học cách cài đặt MYSQL bằng mô-đun @mysql, hãy khởi động mysqld. dịch vụ, bảo mật máy chủ MySQL, kết nối với cơ sở dữ liệu và bắt đầu sử dụng MySQL để tạo cơ sở dữ liệu, người dùng và bảng

Sau khi MySQL được cài đặt và mysqld. dịch vụ được khởi động, kích hoạt và chạy hoàn toàn tốt trên hệ điều hành CentOS 8, bạn đã sẵn sàng đăng nhập vào MySQL trên CentOS 8 và sử dụng nó theo yêu cầu mong muốn của mình