如何在服务器上授予对所有数据库中所有表的选择权限?

8

首先,对于我认为是一个非常基础的问题表示歉意。谷歌似乎没有适用于我的需求的答案,但我感觉我正在错过一些痛苦的显而易见的东西。除了在每个单独的数据库上重新创建用户之外,是否有一种简洁的方法来实现我想要的功能?我正在寻找像这样的东西。

向 user_foo 授予 (SHOW DATABASES) 的 SELECT 权限;


1
这个工作吗?GRANT SELECT ON database.* TO 'user'@'localhost'; 我的第一个谷歌搜索结果:https://kyup.com/tutorials/create-new-user-grant-permissions-mysql/ - Jacky
不完全正确,我只想让他们拥有SELECT权限(这样他们就无法破坏一切),并且在所有数据库和所有数据库中的所有表上都有该权限。你的解决方案是在一个数据库中给一个表赋予所有权限。这意味着他们基本上可以在自己的一个表中搞得一团糟。 - Ant Vena
嗯,实际上我已经编辑过了,因为我知道你会问这个问题。这意味着你并没有真正阅读我发布的链接。 - Jacky
我已经阅读了链接,你的编辑更接近问题所在,但那只是为单个数据库上的所有表授予选择权限。我的问题是服务器上有四个数据库,作为所有数据库的根用户,我想知道是否有一种方法可以对它们进行集合授权? - Ant Vena
天啊,我瞎了。非常感谢你一直陪伴着我。我很感激。我会标记为正确答案的。我也想点赞,但是我的声望还不够高。 - Ant Vena
显示剩余2条评论
1个回答

10
如前所述,您可以使用以下查询:
GRANT SELECT ON *.* TO 'user'@'localhost';

您可以在这个链接中找到您需要的一切: MySQL授权用户权限

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接