1. Đăng nhập vào MySQL

Để quản lý người dùng và cơ sở dữ liệu trong MySQL, bạn cần đăng nhập vào MySQL bằng tài khoản có quyền quản trị (thường là root). Sử dụng lệnh sau trong terminal hoặc command line:

mysql -u root -p
  • -u root: Chỉ định đăng nhập với tài khoản root.
  • -p: Yêu cầu bạn nhập mật khẩu.

Khi bạn thực hiện lệnh này, MySQL sẽ yêu cầu nhập mật khẩu của tài khoản root. Sau khi nhập đúng mật khẩu, bạn sẽ vào giao diện dòng lệnh của MySQL.


2. Tạo người dùng mới trong MySQL

Để tạo một người dùng mới, bạn sử dụng lệnh CREATE USER. Cú pháp cơ bản như sau:

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
  • username: Tên người dùng bạn muốn tạo.
  • host: Địa chỉ từ đó người dùng có thể kết nối (ví dụ: localhost hoặc % cho bất kỳ địa chỉ IP nào).
  • password: Mật khẩu cho người dùng.

Ví dụ:

  • Tạo người dùng tên john với quyền truy cập từ localhost:
CREATE USER 'john'@'localhost' IDENTIFIED BY 'StrongPassword123';
  • Tạo người dùng tên jane có thể kết nối từ bất kỳ địa chỉ IP nào:
CREATE USER 'jane'@'%' IDENTIFIED BY 'SecurePass456';

3. Cấp quyền cho người dùng

Sau khi tạo người dùng, bạn cần cấp quyền cho họ để thực hiện các thao tác trong cơ sở dữ liệu. Bạn có thể sử dụng lệnh GRANT để cấp quyền. Cú pháp như sau:

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'host';
  • database_name.*: Cấp quyền trên toàn bộ cơ sở dữ liệu database_name.
  • ALL PRIVILEGES: Cấp tất cả các quyền (như SELECT, INSERT, UPDATE, DELETE, …).

Ví dụ:

  • Cấp quyền tất cả cho người dùng john trên cơ sở dữ liệu my_database:
GRANT ALL PRIVILEGES ON my_database.* TO 'john'@'localhost';
  • Cấp quyền chỉ cho phép SELECT cho người dùng jane trên cơ sở dữ liệu my_database:
GRANT SELECT ON my_database.* TO 'jane'@'%';

4. Xác nhận thay đổi quyền

Sau khi cấp quyền, bạn cần chạy lệnh sau để MySQL áp dụng các thay đổi:

FLUSH PRIVILEGES;

5. Kiểm tra danh sách người dùng

Để xem danh sách các người dùng đã được tạo trong MySQL, bạn có thể sử dụng lệnh sau:

SELECT user, host FROM mysql.user;

6. Xóa người dùng

Nếu bạn muốn xóa một người dùng đã tạo, bạn có thể sử dụng lệnh DROP USER. Cú pháp như sau:

DROP USER 'username'@'host';

Ví dụ:

  • Để xóa người dùng john:
DROP USER 'john'@'localhost';