在 Oracle 11 中创建的新用户需要"向新用户授予版本 ora$base 的使用权";



这发生在从另一台服务器复制的数据库中。对于所有新用户,我必须执行下一个代码,否则我会得到错误ORA-38802:

grant use on edition ora$base to <new-user>;

新用户有可能自动获得该权限吗?

谢谢。

Oracle帐户模型的工作方式与您描述的不同。创建用户的用户对该用户创建的对象没有特殊权限。所有用户都出生在手动状态

对象权限只有两个级别:

  • 在单个模式中对特定对象授予的权限
  • 在每个模式中对给定类型的所有对象授予的特权,通过ANY特权获得

第一级是您提到的SLAVE将其对象的权限授予MASTER的机制。第二个级别非常强大,因为它适用于所有用户拥有的所有对象,包括Oracle DBMS帐户(如SYS(。因此,只有DBA用户才具有ANY级别的权限是正常的。

造成这种状况的原因是,Oracle采用用户和模式作为控制对数据和功能的访问的机制。一个完全由另一个用户拥有的用户在这种情况下没有任何意义。

关于你的问题,我看到的最好的方法是两种方法

  • 代理用户
  • 数据库保管库

相关内容

最新更新