Các để tạo 1 user mới và gán quyền trong MYSQL
https://viblo.asia/p/cac-de-tao-1-user-moi-va-gan-quyen-trong-mysql-aWj53b7Gl6m?fbclid=IwAR3KkdYgfxXIEYFTdnVkwSQttuCTzeBlDRIn_070BK_8uZP_-ZTvF4AQl8o
Các để tạo 1 user mới và gán quyền trong MYSQL
Giới thiệu
MYSQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở giúp cho người dùng lưu trữ, tổ chức và sau đó lấy dữ liệu. Nó có nhiều lựa chọn cung cấp cho người dùng để thao tao với bảng và cơ sở dữ liệu. Bài viết này hướng dẫn việc tạo user và cấp quyền trong MYSQL.
Ngay khi bắt đầu sử dụng MySQL database, bạn sẽ được cung cấp username và password. Những thông tin đăng nhập này sẽ cho bạn quyền “root access”. Một user root có toàn quyền truy cập tới database và bảng trong databases. Nhưng qua thời gian hoặc thao tác trên database production chẳng hạn, bạn sẽ cần cấp quyền truy cập tới database tới một user mà không cho phép họ sử dụng toàn quyền.
Tạo 1 user mới như thế nào trong MySQL?
Để tạo user mới, bạn thực hiện các bước như sau:
Truy cập vào mysql
Thực thi câu lệnh để tạo user:
newuser: tên user
password: mật khẩu của user
Tại thời điểm này, user mới không có quyền làm bất cứ điều gì với cơ sở dữ liệu. Trên thực tế, ngay cả khi user mới cố gắng đăng nhập,họ sẽ không thể truy cập vào MySQL shell.
Do vậy, điều đầu tiên cần làm là cung cấp cho user quyền truy cập vào các thông tin họ cần
Gán quyền cho user
Dấu * ở trên tương ứng với cơ sở dữ liệu và bảng mà user có thể truy cập - cụ thể là lệnh này cho phép người dùng thêm, sửa, xóa thực thi các công việc trên tất cả các bảng trong cơ sở dữ liệu
Để thay đổi được thực hiện ngay lập tức, hãy dùng lệnh sau:
Như vậy, với các bước ở trên, user mới tạo của bạn có toàn quyền như là user root
Một số quyền bạn có thể gán cho user trong MySQL
Dưới đây là danh sách các lệnh thường dùng để gán quyền cho user:
ALL PRIVILEGES – Cho phép MySQL user thực hiện toàn quyền trên databases (hoặc 1 vài db được thiết lập)
CREATE – Cho phép user tạo mới tables hoặc databases
DROP – Cho phép xóa tables hoặc databases
DELETE – Cho phép xóa bản ghi dữ liệu trong bảng tables
INSERT – Cho phép thêm bản ghi mới vào bảng csdl
SELECT – Cho phép sử dụng lệnh Select để tìm kiếm dữ liệu
UPDATE – Cho phép cập nhật csdl
GRANT OPTION – Cho phép gán hoặc xóa quyền của người dùng khác.
MySQL cho phép gán quyền cho user với một dòng lệnh đơn giản:
Nếu bạn muốn cho phép user truy cập tất cả databases hoặc tất cả bảng, hãy dùng dấu * thay cho tên database hoặc table.
Mỗi lần bạn cập nhật hay thay đổi quyền hãy dùng lệnh Flush Privileges đảm bảo các thay đổi có hiệu lực.
Để áp dụng nhiều loại quyền, ngăn cách chúng bằng dấu phẩy. Ví dụ, bạn có thể gán quyền CREATE và SELECT cho một user:
Nếu cần thu hồi lại quyền của user, hãy dùng lệnh REVOKE:
Ví dụ, để thu hồi toàn bộ các quyền cho một user:
Hoặc bạn cũng có thể xóa user:
Bạn có thể kiểm tra user mới tạo đã thành công và có thể đăng nhập được hay chưa, đầu tiên thực hiện logout bằng cách:
và login bằng lệnh
NOTE: Hãy nhớ, để thực thi những quyền này bạn cần có quyền root. Cũng như vậy, hãy chắc đã thực thi FLUSH PRIVILEGES sau khi tạo bất kỳ thay đổi nào về quyền.
Hiển thị quyền của một user trong MySQL như thế nào?
Để biết quyền gì bạn có để gán cho một MySQL, bạn có thể sử dụng lệnh SHOW GRANTS:
Tham khảo
All rights reserved
Last updated