Auth_socket thành mysql_native_password

MySQL là hệ thống quản trị cơ sở dữ liệu tự do nguồn mở biến phổ biến nhất thế giới. Trong bài viết này HOSTVN sẽ hướng dẫn các bạn cách cài đặt MySQL trên Ubuntu 18

Nội dung chính Hiển thị

  • 1. Cài đặt Mysql trên Ubuntu 18
  • 2. Bảo mật MySQL
  • 3. Đăng nhập bằng root
  • 4. Kết luận
  • Sách điện tử Wordpress

Cài đặt Mysql trên Ubuntu 18 – MySQL là hệ thống quản trị cơ sở dữ liệu tự làm nguồn mở biến phổ biến nhất thế giới và được các nhà phát triển rất lạ trong quá trình phát triển ứng dụng. Trong bài viết này, HOSTVN sẽ hướng dẫn các bạn cách cài đặt MySQL trên Ubuntu 18

lục mục

  • Cài đặt Mysql trên Ubuntu 18
    • 1. Cài đặt Mysql trên Ubuntu 18
    • 2. Bảo mật MySQL
    • 3. Đăng nhập bằng root
    • 4. Kết luận

Tại thời điểm viết bài viết này, phiên bản mới nhất của MySQL có sẵn từ kho ứng dụng chính thức của Ubuntu là phiên bản MySQL 5. 7

1. Cài đặt Mysql trên Ubuntu 18

Đầu tiên, các bạn cần cập nhật gói apt bằng lệnh sau

sudo apt update

Sau đó cài đặt gói MySQL bằng lệnh sau

sudo apt install mysql-server mysql-client -y

Sau khi cài đặt hoàn tất, dịch vụ MySQL sẽ tự động khởi động lại. Để kiểm tra xem máy chủ MySQL đang chạy hay không, hãy sử dụng lệnh sau đây

sudo systemctl status mysql

Auth_socket thành mysql_native_password

Trong lời nhắc tiếp theo, bạn sẽ được yêu cầu đặt mật khẩu cho người dùng root MySQL. Khi bạn thực hiện điều đó, tập lệnh cũng sẽ yêu cầu bạn xóa người dùng ẩn danh, giới hạn quyền truy cập của người dùng root vào máy cục bộ localhost và xóa cơ sở dữ liệu kiểm tra. Bạn nên trả lời câu hỏi Y cho tất cả các câu hỏi

Mật khẩu mới. Nhập mật khẩu root mysql
Nhập lại mật khẩu mới. Nhập lại mật khẩu một lần nữa
Xóa người dùng ẩn danh? y
Disallow root login remotely? y
Remove test database and access to it? y
Reload privilege tables now? y

3. Đăng nhập bằng root

Để tương tác với máy chủ MySQL từ dòng lệnh, bạn có thể sử dụng tiện ích máy khách MySQL. Trong hệ thống Ubuntu chạy MySQL 5. 7 (và phiên bản mới hơn), người dùng root được xác thực bằng plugin auth_socket

Plugin auth_socket xác thực người dùng kết nối từ localhost thông qua Unix socket. Điều này có nghĩa là bạn không thể đăng nhập người dùng root bằng mật khẩu. Để đăng nhập vào máy chủ MySQL với người dùng root sử dụng lệnh sau

sudo mysql

Auth_socket thành mysql_native_password

2. Bảo mật MySQL

MySQL đi kèm với một tập lệnh là mysql_secure_installation có thể thực hiện một số hoạt động liên quan đến bảo mật. To use of you run the command after

sudo mysql_secure_installation

Bạn sẽ được yêu cầu thiết lập cấu hình VALIDATE PASSWORD PLUGIN được sử dụng để kiểm tra độ mạnh của mật khẩu người dùng MySQL. Có ba cấp chính sách xác thực mật khẩu, thấp (Thấp), trung bình (Trung bình) và mạnh (Mạnh). Nhấn ENTER nếu bạn không muốn thiết lập VALIDATE PASSWORD PLUGIN

Auth_socket thành mysql_native_password

Trong lời nhắc tiếp theo, bạn sẽ được yêu cầu đặt mật khẩu cho người dùng root MySQL. Khi bạn thực hiện điều đó, tập lệnh cũng sẽ yêu cầu bạn xóa người dùng ẩn danh, giới hạn quyền truy cập của người dùng root vào máy cục bộ localhost và xóa cơ sở dữ liệu kiểm tra. Bạn nên trả lời câu hỏi Y cho tất cả các câu hỏi

Mật khẩu mới. Nhập mật khẩu root mysql
Nhập lại mật khẩu mới. Nhập lại mật khẩu một lần nữa
Xóa người dùng ẩn danh? y
Disallow root login remotely? y
Remove test database and access to it? y
Reload privilege tables now? y

3. Đăng nhập bằng root

Để tương tác với máy chủ MySQL từ dòng lệnh, bạn có thể sử dụng tiện ích máy khách MySQL. Trong hệ thống Ubuntu chạy MySQL 5. 7 (và phiên bản mới hơn), người dùng root được xác thực bằng plugin auth_socket

Plugin auth_socket xác thực người dùng kết nối từ localhost thông qua Unix socket. Điều này có nghĩa là bạn không thể đăng nhập người dùng root bằng mật khẩu. Để đăng nhập vào máy chủ MySQL với người dùng root sử dụng lệnh sau

sudo mysql

Auth_socket thành mysql_native_password

Nếu bạn muốn đăng nhập vào máy chủ MySQL của mình bằng người dùng root từ một chương trình bên ngoài như phpMyAdmin, bạn có hai tùy chọn

  • Hướng dẫn Cài đặt phpMyAdmin trên Ubuntu 18. 04

HOSTVN không khuyến mãi các bạn đã thay đổi cách xác thực cho người dùng root. Thay vào đó các bạn hãy tạo user riêng cho từng database để đảm bảo vấn đề bảo mật

  • Cách đầu tiên là thay đổi phương thức xác thực từ auth_socket thành mysql_native_password. Bạn có thể làm điều đó bằng cách chạy lệnh sau
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';
FLUSH PRIVILEGES;
  • Cách thứ hai là tạo ra người dùng quản trị mới có quyền truy cập vào tất cả các cơ sở dữ liệu
GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';

Thay very_strong_password bằng mật khẩu mà bạn muốn đặt

4. Kết luận

Qua bài viết này HOSTVN đã hướng dẫn các bạn cách cài đặt MySQL trên Ubuntu 18. Nếu có bất kỳ ý kiến ​​đóng góp nào thì các bạn có thể rút lại bình luận ở bên dưới. Ngoài ra, bạn có thể xem thêm Hướng dẫn cài đặt MariaDB trên Ubuntu 18