问题1:grant SHOW DATABASES on . to user_name; 老师给了OceanBase这个权限, 现在use db后执行show key 命令都不行了? grant all on . 这样授权就可以,可以直接执行SHOW KEY命令, 但SHOW FULL TABLES,SHOW FULL COLUMNS 这种命令就不需要所有db权限 问题2:但只给某一个db的权限,登录数据库后不能直接执行SHOW KEY命令,需要使用use db命令切换db后才能执行
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
问题1: 给予用户 SHOW DATABASES
权限的语句不会自动授予权限查看和使用某个特定数据库的信息。如果您想授予用户查看和使用特定数据库的权限,需要使用类似于 GRANT ALL ON db_name.* TO user_name;
的语句来授权。
问题2: 如果您只想给用户授权特定数据库的权限,可以使用类似于 GRANT ALL ON db_name.* TO user_name;
的语句来授权。这样用户就只会具备操作特定数据库的权限,而不能够在其他数据库中执行类似 SHOW KEY
这样的命令,需要先使用 use db_name;
命令切换到特定的数据库才能执行相关命令。如果您想提供对多个数据库进行的类似操作的访问权限,您可以授权 .*
来代表所有数据库,这样就可以在任何数据库中执行相关命令了。需要注意的是,这种情况下需要慎重考虑安全性问题并谨慎授权。
需要注意的是,授权的语句应该谨慎授予,只授权必要的权限,确保保护数据库的安全性和完整性。
回答1:all是所有权限 如果想控制权限 可以按需增加权限的。ob权限分类可以参看这个文档 https://www.oceanbase.com/docs/community-observer-cn-10000000000901690 回答2:增加select权限到所需的库下即可。,此回答整理自钉群“[社区]技术答疑群OceanBase”