如何向 MySQL DB 中的用户授予对多个表的访问权限?

Mug*_*hil 6 mysql mysql-5 linux mysql-5.5

我有一个名为“greats”的 mysql db,有四个表,如下所示

+---------------------+
| Tables_in_greatstat |
+---------------------+
| log                 |
| sitedet1            |
| siteindex           |
| user                |
| whois1              |
+---------------------+
Run Code Online (Sandbox Code Playgroud)

在这里,我决定创建一个 mysql 用户“test”,并且我只想为数据库“greatstat”的特定表提供访问权限。那么,我可以知道如何在 MYSQL 中为用户授予特定的表权限吗?

Rol*_*DBA 8

首先创建用户

GRANT USAGE ON *.* TO test@'localhost' IDENTIFIED BY 'whateverpassword';
Run Code Online (Sandbox Code Playgroud)

仅授予对 greatstat 数据库中的 siteindex 表的 SELECT 权限

GRANT SELECT ON greatstat.siteindex TO test@'localhost';
Run Code Online (Sandbox Code Playgroud)

仅授予 Greatstat 数据库中 whois1 表的 SELECT 权限

GRANT SELECT ON greatstat.whois1 TO test@'localhost';
Run Code Online (Sandbox Code Playgroud)

授予greatstat数据库中每个表的所有权限

GRANT ALL PRIVILEGES ON greatstat.* TO test@'localhost';
Run Code Online (Sandbox Code Playgroud)

请阅读有关 GRANT 命令MySQL 文档