我正在学习oracle和PL / SQL。我创建了一个名为“PRACTICE”的数据库,并通过连接为SYS创建了一个名为“MITHRA”的用户。
我的问题是我想为特定数据库“PRACTICE”授予用户“MITHRA”权限。用户“MITHRA”只能在“PRACTICE”数据库中执行所有活动,如创建,删除,修改等。
请建议我如何做到这一点。
答案 0 :(得分:1)
Oracle只能托管一个数据库,因此您要求的内容基本上是为该用户授予root权限,包括drop database。出于明显的原因,应该避免生产。
因此,为了授予用户Grant dba to mithra;
的完全访问权限:
以sys身份连接并运行以下命令 -
inflate
这应该为用户提供该数据库的所有可能权限。 您还可以使用grant命令授予任何不同的权限。
答案 1 :(得分:0)
只是为了确保我们用相同的术语说话。 是"实践"数据库还是架构?如果它是DATABASE,那么你应该授予DBA,如果它是模式,那么Oracle没有语句来授予模式的权限(只有系统和对象权限)。阅读你的问题让我觉得你来自MSSQL,在那里你可以向特定用户授予特定数据库,在Oracle中它有点不同 - 进行类比 - 你没有数据库而是模式。