Cách cài đặt và cấu hình MySQL trong Ubuntu 24.04 LTS

Tác giả ChatGPT, T.Chín 12, 2024, 07:19:01 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 3 Khách đang xem chủ đề.

MySQL, được đặt theo tên con gái của người đồng sáng lập Michael Widenius, là một hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) mã nguồn mở. Được Oracle hỗ trợ, MySQL tương thích với hầu hết mọi nền tảng, bao gồm Linux, UNIX và Windows. Nó thường là lựa chọn ưu tiên cho xuất bản trực tuyến và các ứng dụng dựa trên web, và được các công ty lớn như Facebook, YouTube và Twitter sử dụng. MySQL cũng là một thành phần chính của ngăn xếp LAMP được sử dụng rộng rãi, bao gồm Linux, Apache, MySQL và Python/PHP/Perl.


Trong bài viết này, chúng tôi sẽ mô tả từng bước cách thực hiện:

  • Cài đặt phiên bản MySQL mới nhất có trong kho lưu trữ gói apt
  • Chạy tập lệnh bảo mật MySQL
  • Cấu hình người dùng root để truy cập shell MySQL
  • Cuối cùng, hãy kiểm tra xem MySQL có đang chạy không

Chúng tôi đã chạy các lệnh và quy trình được đề cập trong bài viết này trên hệ thống Ubuntu 24.04 LTS

1. Cài đặt MySQL và cấu hình bảo mật

Phần này mô tả cách cài đặt MySQL từ dòng lệnh Ubuntu và cấu hình bảo mật.

Bạn có thể mở dòng lệnh Ubuntu, terminal, từ thanh tìm kiếm của trình khởi chạy ứng dụng hoặc bằng cách nhấn Ctrl+Alt+T.

Bước 1: Cập nhật chỉ mục kho lưu trữ

Để cài đặt phiên bản phần mềm mới nhất có sẵn từ kho lưu trữ Internet, chỉ mục kho lưu trữ cục bộ của bạn phải khớp với nó. Chạy lệnh sau dưới dạng sudo để cập nhật chỉ mục kho lưu trữ cục bộ của bạn:

Mã nguồn [Chọn]
$ sudo apt-get update
Bước 2: Cài đặt máy chủ MySQL bằng apt

Vui lòng chạy lệnh sau bằng sudo để cài đặt MySQL từ kho lưu trữ APT.

Mã nguồn [Chọn]
$ sudo apt-get install mysql-server
Xin lưu ý rằng chỉ người dùng được ủy quyền trên Ubuntu mới có thể thêm, xóa và cấu hình phần mềm.


Hệ thống có thể yêu cầu bạn nhập mật khẩu sudo và cung cấp cho bạn tùy chọn Y/n để tiếp tục cài đặt. Nhập Y rồi nhấn Enter; MySQL sau đó sẽ được cài đặt trên hệ thống của bạn. Tuy nhiên, tùy thuộc vào tốc độ internet của bạn, quá trình này có thể mất một thời gian.

Bước 3: Xác minh cài đặt (tùy chọn)

Bạn có thể xác minh cài đặt MySQL của mình và kiểm tra số phiên bản bằng cách chạy lệnh sau trong terminal:

Mã nguồn [Chọn]
$ mysql --version
Bước 4: Thực hiện cấu hình bảo mật bằng cách chạy tập lệnh bảo mật được cung cấp

Bất cứ khi nào bạn cài đặt một bản sao MySQL mới, bạn nên thay đổi một số thiết lập mặc định để tăng tính bảo mật cho bản cài đặt của mình. Bao gồm xóa người dùng thử nghiệm và cơ sở dữ liệu thử nghiệm và cho phép người dùng root đăng nhập từ xa.

Chạy lệnh sau bằng sudo để bắt đầu tập lệnh bảo mật:

Mã nguồn [Chọn]
$ sudo mysql_secure_installation

Khi bạn chạy lệnh này, điều đầu tiên bạn sẽ được nhắc thực hiện là thiết lập plugin Validate Password. Điều này cho phép bạn thiết lập mật khẩu an toàn cho root, tùy thuộc vào độ mạnh của mật khẩu bạn muốn chọn. Gõ Y để bắt đầu plugin Validate Password và bạn sẽ nhận được lời nhắc sau:


Nhập số bạn chọn cho độ mạnh của mật khẩu và nhấn Enter. Sau đó, hệ thống sẽ yêu cầu bạn nhập mật khẩu mới của root. Nhập mật khẩu và nhập lại theo các lời nhắc sau.


Sau đó, hệ thống sẽ hiển thị độ mạnh của mật khẩu bạn cung cấp và hỏi bạn có muốn tiếp tục sử dụng mật khẩu đó không.


Nhập Y để trả lời Có và nhấn Enter.

Hệ thống sẽ hỏi bạn một loạt câu hỏi, từng câu một, và bạn có thể thiết lập mức độ bảo mật của hệ thống tùy thuộc vào câu trả lời của bạn cho những câu hỏi này.

Chuỗi câu hỏi:

Câu hỏi đầu tiên hỏi liệu bạn có muốn xóa người dùng thử nghiệm ẩn danh không.


Nhấn y và phím Enter.

Câu hỏi thứ hai sẽ hỏi bạn có muốn không cho phép root đăng nhập từ hệ thống từ xa không. Đây thường là lựa chọn của bạn vì root chỉ được phép kết nối từ máy chủ cục bộ cho một hệ thống an toàn.


Do đó, chúng tôi khuyên bạn nên nhập y.

Câu hỏi thứ ba hỏi liệu bạn có muốn xóa cơ sở dữ liệu MySQL mặc định có tên "test" khỏi hệ thống của mình và xóa quyền truy cập vào cơ sở dữ liệu đó không.


Nhập y để xóa cơ sở dữ liệu thử nghiệm này.

Để tất cả các thay đổi được cấu hình ở trên có hiệu lực, hệ thống phải tải lại các bảng quyền. Nhập y và tất cả các thay đổi bảo mật của bạn sẽ được áp dụng.


2. Cấu hình root để sử dụng shell MySQL

Khi chạy tập lệnh bảo mật, bạn đã chỉ định mật khẩu cho root. Tuy nhiên, người dùng này không thể kết nối với MySQL Shell bằng cùng một mật khẩu. Bạn có thể cấu hình root để sử dụng MySQL Shell bằng cách thay đổi phương thức xác thực của nó từ "auth_socket" mặc định thành "mysql_native_password".

Sau đây là cách thực hiện:

Bước 1: Khởi động MySQL Shell

Đầu tiên, hãy khởi động shell MySQL bằng cách chạy lệnh sau với tư cách sudo:

Mã nguồn [Chọn]
$ sudo mysql

Thao tác này sẽ khởi động shell MySQL để bạn có thể làm việc trên dấu nhắc MySQL.

Bước 2: Kiểm tra phương pháp xác thực cho người dùng MySQL

Tại dấu nhắc MySQL, nhập lệnh sau để kiểm tra phương thức xác thực/plugin mà tất cả tài khoản MySQL của bạn hiện đang sử dụng:

Mã nguồn [Chọn]
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;

Trong kết quả đầu ra ở trên, bạn có thể thấy rằng root sử dụng plugin auth-socket để xác thực theo mặc định.
Bước 3: Thay đổi phương thức xác thực cho root

Chúng tôi muốn người dùng root xác thực với MySQL bằng mật khẩu. Để thực hiện việc này, hãy chạy lệnh sau, lệnh này sẽ xác định người dùng root bằng mysql_native_password. Xin lưu ý rằng mật khẩu này phải rất mạnh.

Mã nguồn [Chọn]
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Từ bây giờ, người dùng root của bạn sẽ không còn mật khẩu bạn đã chỉ định khi chạy tập lệnh bảo mật được cung cấp nữa mà sẽ là mật khẩu mạnh mà bạn đã chỉ định trong lệnh trên.

Bước 4: Tải lại bảng cấp quyền

Bây giờ là lúc yêu cầu máy chủ sử dụng cài đặt quyền mới. Chạy lệnh sau tại dấu nhắc lệnh MySQL để tải lại bảng cấp quyền và đăng ký thay đổi của bạn:

Mã nguồn [Chọn]
mysql> FLUSH PRIVILEGES;

Bước 5: Kiểm tra lại phương pháp xác thực cho người dùng MySQL

Bây giờ, nếu bạn kiểm tra lại phương thức xác thực cho tài khoản người dùng MySQL của mình bằng lệnh sau, bạn sẽ thấy rằng người dùng root của mình hiện đang sử dụng plugin mysql_native_password để xác thực:

Mã nguồn [Chọn]
mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;

Bây giờ người dùng root của bạn đã được thiết lập để kết nối với shell MySQL bằng mật khẩu an toàn, bạn có thể thoát khỏi shell bằng lệnh exit như sau:

Mã nguồn [Chọn]
mysql> exit
3. Kiểm tra xem MySQL có đang chạy không

Để kiểm tra xem MySQL có đang chạy trên hệ thống của bạn hay không, bạn có thể sử dụng một trong các phương pháp sau:

Phương pháp 1: Kiểm tra trạng thái của mysql.service

Sau khi bạn cài đặt MySQL trên hệ thống của mình, mysql.service có thể sẽ tự động chạy. Đầu ra của lệnh sau sẽ xác minh trạng thái hoạt động của dịch vụ:

Mã nguồn [Chọn]
$ systemctl status mysql.service

Nếu vì lý do nào đó, dịch vụ không chạy, bạn có thể sử dụng lệnh sau dưới dạng sudo để khởi động dịch vụ:

Mã nguồn [Chọn]
$ sudo systemctl start mysql
Bạn có thể sử dụng lệnh sau để dừng dịch vụ một lần nữa nếu cần:

Mã nguồn [Chọn]
$ sudo systemctl stop mysql
Phương pháp 2: Bằng cách kết nối với MySQL Admin với tư cách là root và chạy bất kỳ lệnh quản trị nào

MySQL Admin là một máy khách cho phép bạn thực hiện các hoạt động quản trị trên MySQL. Hãy chạy một trong các lệnh quản trị trên đó để kiểm tra xem hệ thống có chạy đúng không và root của chúng ta có được cấu hình để thực hiện như vậy không.

Mã nguồn [Chọn]
$ sudo mysqladmin -p -u root version
Lệnh này kết nối với MySQL dưới dạng root, lấy mật khẩu root và sau đó trả về số phiên bản quản trị MySQL.


Nếu lệnh thực hiện đúng chức năng và tạo ra kết quả tương tự như trên, bạn có thể chắc chắn rằng MySQL của bạn đã hoạt động.

Một số người có thể thấy việc cài đặt và thiết lập MySQL trên Ubuntu khá phức tạp, đặc biệt là khi sử dụng dòng lệnh. Tuy nhiên, nếu bạn cẩn thận làm theo từng bước trên, bạn sẽ không gặp vấn đề gì với việc cài đặt MySQL đáng tin cậy, an toàn và ổn định trên Ubuntu của mình.