2016-09-20 52 views
0

我想知道什么是Oracle中的以下两个语句之间的区别:差之间DBA和所有特权

  1. GRANT DBA TO Jack
  2. GRANT ALL PRIVILEGES TO Jack
+4

这是没有记录? [Oracle 12.1 SQL语言参考:GRANT](http://docs.oracle.com/database/121/SQLRF/statements_9013.htm) –

回答

0

我劝你还是不要去尝试提供DBA和从来没有提供所有PRIVILEDES给任何用户,因为这样的事情应该只由有经验的开发人员完成。 通常只有ONE提供DBA角色的用户。

作为每Oracle文档: 当安装Oracle数据库,有创建了两个管理员角色: 1. SYS 2.系统

一种SYS角色可以访问oracle数据库的内部数据字典表。 数据库数据字典的所有基表和视图都存储在模式SYS中。这些基表和视图对于Oracle数据库的操作至关重要。为了维护数据字典的完整性,SYS模式中的表只能由数据库操纵。

如果你调情与任何内部SYS表,你可能会面临许可证注销

SYSTEM的用户名来创建额外的表和显示管理信息视图,以及内部表和各种Oracle数据库选项和工具使用的视图。切勿使用SYSTEM模式来存储非管理用户感兴趣的表。

DBA角色不包括SYSDBA或SYSOPER系统特权。这些特殊的管理权限允许管理员执行基本的数据库管理任务,例如创建数据库和实例启动和关闭。

这里给予用户特定的对象,甚至是系统对象,这不包括sys和系统特权,你可以对这样的对象做任何操作,这就是为什么你应该避免使用ALL PRIVILEGES。

相关问题