Oracle
如何查找 SYS 特權使用者
我想知道在導出/導入操作之前哪些使用者具有 SYS 和 SYSDBA 權限。
我搜尋了很多,但我找不到。
對於你的問題:
我想知道在導出/導入操作之前哪些使用者具有 SYS 和 SYSDBA 權限。
SYSDBA 是一個角色,而不是使用者或模式。SYSDBA 角色類似於 unix 上的“root”或 Windows 上的“管理員”。它看到了一切,可以做一切。在內部,如果您以 sysdba 身份連接,您的模式名稱將顯示為 SYS。
根據Burleson 諮詢部落格,該
v$pwfile_users
視圖包含已被授予 SYSDBA 或 SYSOPER 角色的所有使用者的列表。SQL> desc v$pwfile_users; Name Null? Type ----------------------------------------- -------- ---------------------------- USERNAME VARCHAR2(30) SYSDBA VARCHAR2(5) SYSOPER VARCHAR2(5) SYSASM VARCHAR2(5) SQL> SQL> select * from v$pwfile_users; USERNAME SYSDB SYSOP SYSAS ------------------------------ ----- ----- ----- SYS TRUE TRUE FALSE TOM TRUE FALSE FALSE
在 11g 中有一個
v$pwfile_users
用於 SYSASM 權限的新列:SYS AS SYSDBA @ orcl11 SQL> select * from v$pwfile_users; USERNAME SYSDB SYSOP SYSAS ------------------------------ ----- ----- ----- SYS TRUE TRUE FALSE
有關詳細資訊,請參閱此Tom Kyte 文章。%3A%3AP11_QUESTION_ID:2659418700346202574">此處
沒有 SYS 權限,而是有 SYS 使用者。要列出具有 SYSDBA 權限的使用者,請使用以下查詢。
SQL>conn sys/password as sysdba SQL>SELECT * FROM v$pwfile_users;