2016-09-20 51 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。

相關問題