Để 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.
Để 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.john
với quyền truy cập từ localhost
:CREATE USER 'john'@'localhost' IDENTIFIED BY 'StrongPassword123';
jane
có thể kết nối từ bất kỳ địa chỉ IP nào:CREATE USER 'jane'@'%' IDENTIFIED BY 'SecurePass456';
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, …).john
trên cơ sở dữ liệu my_database
:GRANT ALL PRIVILEGES ON my_database.* TO 'john'@'localhost';
jane
trên cơ sở dữ liệu my_database
:GRANT SELECT ON my_database.* TO 'jane'@'%';
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;
Để 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;
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';
john
:DROP USER 'john'@'localhost';