Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động

MySQL Grant All Privileges là các lệnh MySQL được triển khai để cho phép tài khoản người dùng MySQL quản lý và truy cập cơ sở dữ liệu với các đặc quyền phù hợp. Khi chúng tôi cấp đặc quyền cho Tài khoản người dùng MySQL, nó sẽ kiểm soát những thao tác mà người dùng có thể thực hiện

Các đặc quyền này có thể được sử dụng khác nhau ở các cấp độ hoạt động khác nhau

  • Đặc quyền quản trị sau đó được áp dụng trên toàn cầu để thực hiện hoạt động của máy chủ MySQL nhưng không được chỉ định cho cơ sở dữ liệu MySQL cụ thể
  • Đặc quyền cơ sở dữ liệu có thể được triển khai cho một cơ sở dữ liệu cụ thể hoặc trên toàn cầu cho tất cả các cơ sở dữ liệu máy chủ cùng với tất cả các đối tượng được liên kết của nó trong cơ sở dữ liệu
  • Có thể cho phép các đặc quyền đối với các đối tượng cơ sở dữ liệu MySQL, bao gồm chỉ mục, bảng, dạng xem và cả các thường trình được lưu trữ, cho tất cả các đối tượng MySQL thuộc một loại nhất định trong cơ sở dữ liệu hoặc tất cả các bảng cơ sở dữ liệu MySQL hoặc thậm chí cho tất cả các đối tượng thuộc một loại nhất định trong tất cả các cơ sở dữ liệu MySQL

Cú pháp của MySQL Cấp tất cả các đặc quyền

Để sử dụng MySQL Grant All Privileges bởi tài khoản người dùng cho bất kỳ cơ sở dữ liệu MySQL cụ thể nào và thực thi các lệnh MySQL, chúng ta cần áp dụng cấu trúc cú pháp cơ bản sau để cấp quyền

GRANT [ALL | Specific Privilege] [, privilege], .. ON PrivilegeLevel TO AccountName;

Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn

Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác

Cú pháp trên được minh họa bên dưới

Ban đầu, chúng ta phải chỉ định một hoặc nhiều đặc quyền sau từ khóa GRANT. Giả sử sau đó bạn cung cấp nhiều đặc quyền hơn; . Để chứng minh, chúng ta hãy cấp đặc quyền CHỌN trên một bảng có tên 'Sách' trong cơ sở dữ liệu demo trên máy chủ cho tài khoản người dùng MySQL admin@localhost

GRANT SELECT ON Books TO admin@localhost;

Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án)

Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động
Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động
Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động
Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động

Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động
Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động
Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động
Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động

Giá bán
Xem các khóa học

Hơn 360 khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 7 (86.408 xếp hạng)

Tài khoản người dùng MySQL bao gồm hai đoạn. tên người dùng và tên máy chủ, như được hiển thị ở trên

Tương tự, các ví dụ minh họa bên dưới sẽ cho bạn thấy cấp INSERT, UPDATE và DELETE giống như nhiều đặc quyền trên bảng Books cho admin@localhost

GRANT INSERT, UPDATE, DELETE ON Books TO admin@localhost;

Một lần nữa, thứ hai, chúng ta cần nêu Cấp độ đặc quyền sẽ xác định cấp độ đặc quyền mà các đặc quyền cấp sẽ được áp dụng

Làm cách nào để cấp tất cả các đặc quyền trong MySQL?

MySQL Grant All Privileges là các câu lệnh quản trị MySQL cấp quyền cho tài khoản người dùng để điều chỉnh và thực thi các hoạt động của MySQL. Khi một người dùng mới tạo một hoặc nhiều tài khoản người dùng bằng cách sử dụng câu lệnh CREATE USER thì người dùng đó sẽ không nhận được bất kỳ đặc quyền nào. Điều này có nghĩa là người dùng MySQL có thể đăng nhập vào máy chủ, nhưng người dùng MySQL không thể thực hiện bất cứ điều gì giống như hoạt động của MySQL, bao gồm các truy vấn như chọn cơ sở dữ liệu MySQL, chèn dữ liệu vào bảng cơ sở dữ liệu và các câu lệnh truy xuất dữ liệu khác từ bảng. Do đó, nếu chúng tôi muốn làm việc với cơ sở dữ liệu MySQL và các đối tượng bao gồm nó, tài khoản người dùng sẽ cần có quyền hoặc đặc quyền tài khoản người dùng để thực hiện bất kỳ hoạt động quản lý hoặc quản trị nào trong máy chủ

Để có tất cả các đặc quyền cho tài khoản người dùng, chúng ta phải sử dụng các câu lệnh MySQL Grant All Privileges để làm việc với các bảng cơ sở dữ liệu và các đối tượng cơ sở dữ liệu khác được truy cập ở các mức đặc quyền khác nhau được xác định như sau

1. Đặc quyền toàn cầu

Điều này áp dụng các đặc quyền toàn cầu cho tất cả các cơ sở dữ liệu MySQL trong máy chủ được biểu thị bằng cú pháp. *. *

Ví dụ

GRANT SELECT ON *.* TO myadmin@localhost;

Tại đây, tài khoản người dùng myadmin@localhost sẽ truy vấn các bản ghi dữ liệu từ tất cả các bảng trong tất cả các cơ sở dữ liệu MySQL có trong máy chủ

2. Đặc quyền cơ sở dữ liệu

Điều này cung cấp các đặc quyền cấp cơ sở dữ liệu cho tất cả các đối tượng cơ sở dữ liệu. Chúng ta cần sử dụng cú pháp ON databasename. *

Ví dụ

GRANT INSERT ON databasename.* TO myadmin@localhost;

3. Đặc quyền bảng

Nó gán các đặc quyền mức bảng cho tất cả các cột của bảng bằng cách sử dụng cú pháp ON tên cơ sở dữ liệu. tablename. Ở đây, nếu chúng ta không thêm tên cơ sở dữ liệu thì MySQL sẽ triển khai cơ sở dữ liệu mặc định và có thể báo lỗi nếu không tìm thấy cơ sở dữ liệu mặc định

Ví dụ

GRANT DELETE ON databasename.tablename TO myadmin@locolhost;

4. Đặc quyền cột

Nó áp dụng cho một hoặc nhiều cột trong bảng cho mọi đặc quyền trong máy chủ

Ví dụ

GRANT SELECT (ColumnName1, COlumnName2,..) UPDATE (ColumnName1) ON TableName TO myadmin@localhost;

5. Đặc quyền thường xuyên được lưu trữ

Mức đặc quyền này áp dụng cho các chức năng và thủ tục thường trình được lưu trữ trong MySQL

Ví dụ

GRANT EXECUTE ON PROCEDURE Procedure_Name TO myadmin@localhost;

Tại đây, chỉ định Thủ tục_Name có trong cơ sở dữ liệu hiện tại

6. Đặc quyền người dùng proxy

Mức đặc quyền này cho MySQL Grant All Privileges cho phép một người trở thành proxy cho những người dùng khác. Tại đây, người dùng proxy nhận được tất cả các đặc quyền của người dùng proxy

Ví dụ

________số 8_______

Ở đây, myadmin@localhost chấp nhận tất cả các đặc quyền của MySQL root

Cần lưu ý rằng việc sử dụng câu lệnh GRANT; . Vì vậy, ví dụ: nếu, trong trường hợp, biến hệ thống chỉ đọc được cho phép, thì người dùng yêu cầu sở hữu đặc quyền SUPER để thực thi câu lệnh GRANT

Ví dụ về MySQL Grant All Privileges

Thông thường, trước tiên chúng ta cần tạo một tài khoản người dùng mới bằng cách sử dụng câu lệnh CREATE USER, sau đó, chúng ta cần tiến hành thêm để cấp tất cả các đặc quyền cho người dùng do người dùng tạo bằng cách sử dụng câu lệnh GRANT

Ban đầu, chúng ta sẽ tạo một tài khoản người dùng trong máy chủ MySQL có tên là myadmin@localhost bằng câu lệnh giống câu lệnh CREATE TABLE

Mã số

CREATE USER myadmin@localhost IDENTIFIED BY 'Adminpass@123';

Sau đó, tiếp theo, chúng ta có thể xem các đặc quyền ban đầu được gán cho tên myadmin@localhost do người dùng tạo bằng cách sử dụng câu lệnh SHOW GRANTS

Mã số

GRANT SELECT ON Books TO admin@localhost;0

đầu ra

Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động

Ở đây, thuật ngữ sử dụng biểu thị rằng người dùng có thể đăng nhập vào máy chủ tài khoản cơ sở dữ liệu nhưng không thể có đặc quyền để thực hiện bất kỳ hành động thao tác nào

Bây giờ, chúng tôi sẽ cho phép tất cả các đặc quyền trong tất cả các cơ sở dữ liệu MySQL trong máy chủ cơ sở dữ liệu hiện tại cho myadmin@localhost bằng cách sử dụng các câu lệnh truy vấn sau

Mã số

GRANT SELECT ON Books TO admin@localhost;1

Một lần nữa, chúng ta hãy hiển thị và xem các đặc quyền đối với tài khoản người dùng có tên myadmin@localhost bằng cách sử dụng lệnh SHOW GRANT

Mã số

GRANT SELECT ON Books TO admin@localhost;0

đầu ra

Mysql CẤP TẤT CẢ CÁC ĐẶC QUYỀN không hoạt động

Phần kết luận

MySQL Grant All Privileges cho phép người dùng MySQL cấp tất cả các đặc quyền ở một cấp độ truy cập cụ thể ngoại trừ GRANT OPTION trong cơ sở dữ liệu máy chủ MySQL. Các trình xác định đặc quyền được viết tắt cho tất cả các đặc quyền hiện có ở một cấp đặc quyền cụ thể, cấp tất cả các quyền ở cấp toàn cầu hoặc cấp bảng trong máy chủ MySQL. Do đó, một tài khoản người dùng có thể thực hiện các truy vấn MySQL khác nhau ở các mức đặc quyền khác nhau bằng cách sử dụng MySQL Grant All Privileges

Bài viết được đề xuất

Đây là hướng dẫn về MySQL Grant All Privileges. Ở đây chúng tôi thảo luận về phần giới thiệu, làm thế nào để cấp tất cả các đặc quyền trong MySQL? . Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –

Làm cách nào để cấp tất cả các lệnh đặc quyền trong MySQL?

Để CẤP TẤT CẢ các đặc quyền cho một người dùng , cho phép người dùng đó toàn quyền kiểm soát một cơ sở dữ liệu cụ thể , hãy sử dụng cú pháp sau. mysql> CẤP TẤT CẢ CÁC ĐẶC QUYỀN TRÊN database_name. * TO 'username'@'localhost'; Với lệnh đó, chúng tôi đã yêu cầu MySQL. CẤP CÁC ĐẶC QUYỀN của loại TẤT CẢ (do đó tất nhiên là mọi thứ).

Làm cách nào để hiển thị tất cả các đặc quyền trong MySQL?

Nếu tài khoản người dùng mà bạn đã đăng nhập có đặc quyền CHỌN trên cơ sở dữ liệu mysql nội bộ, bạn có thể xem các đặc quyền được cấp cho các tài khoản người dùng khác. Để hiển thị các đặc quyền của các tài khoản khác, hãy sử dụng định dạng sau. HIỂN THỊ CÁC KHOẢN CẤP CHO ' ; .

Lỗi 1410 42000 là gì). trong MySQL?

Trả lời. Lỗi Mã lỗi. 1410 xảy ra khi các đặc quyền được trao cho câu lệnh truy vấn nhưng người dùng không được tạo . Do đó, người dùng phải được tạo trước khi cấp quyền.

Tất cả các đặc quyền trong MySQL là gì?

TẤT CẢ - Cho phép truy cập đầy đủ vào cơ sở dữ liệu cụ thể . Nếu một cơ sở dữ liệu không được chỉ định, nó cho phép truy cập đầy đủ vào toàn bộ MySQL. TẠO - Cho phép người dùng tạo cơ sở dữ liệu và bảng. XÓA - Cho phép người dùng xóa các hàng khỏi bảng.