为用户授予特定数据库的权限

时间:2015-12-08 07:03:04

标签: database oracle oracle11g privileges

我正在学习oracle和PL / SQL。我创建了一个名为“PRACTICE”的数据库,并通过连接为SYS创建了一个名为“MITHRA”的用户。

我的问题是我想为特定数据库“PRACTICE”授予用户“MITHRA”权限。用户“MITHRA”只能在“PRACTICE”数据库中执行所有活动,如创建,删除,修改等。

请建议我如何做到这一点。

2 个答案:

答案 0 :(得分:1)

Oracle只能托管一个数据库,因此您要求的内容基本上是为该用户授予root权限,包括drop database。出于明显的原因,应该避免生产。

因此,为了授予用户Grant dba to mithra; 的完全访问权限:

以sys身份连接并运行以下命令 -

inflate

这应该为用户提供该数据库的所有可能权限。 您还可以使用grant命令授予任何不同的权限。

答案 1 :(得分:0)

只是为了确保我们用相同的术语说话。 是"实践"数据库还是架构?如果它是DATABASE,那么你应该授予DBA,如果它是模式,那么Oracle没有语句来授予模式的权限(只有系统和对象权限)。阅读你的问题让我觉得你来自MSSQL,在那里你可以向特定用户授予特定数据库,在Oracle中它有点不同 - 进行类比 - 你没有数据库而是模式。