gpt4 book ai didi

oracle - 列出具有 root(管理)权限的用户

转载 作者:行者123 更新时间:2023-12-04 23:08:43 27 4
gpt4 key购买 nike

我想知道在 Oracle 中拥有 root(管理)权限的所有用户的列表。
我希望在脚本或 C++ 应用程序中使用它。脚本优先。

最佳答案

Oracle 中的“root”或“管理”权限究竟是什么意思?您是否希望授予用户 SYSDBA 权限?或者,在较早的 Oracle 版本中,有 DBA 角色,该角色拥有一组广泛的特权,使用户能够做大多数事情。它在 11g 中具有一组简化的功能。 @client09 给出的答案对于准确识别每个用户可以做什么很有值(value)。

对我来说,Oracle 中的 root 用户是 SYSDBA 帐户,默认情况下是 SYS 用户。任何被授予此权限的人都可以登录“AS SYSDBA”,这使该用户可以完全控制数据库。您可以通过此选择列出授予此权限的用户:

SELECT * FROM v$pwfile_users;

有趣的是,如果我被授予 SYSDBA 角色,并且我以 sysdba 身份登录,那么 Oracle session 中的实际用户是 SYS:
SQL> create user test identified by test;

User created.

SQL> grant create session to test;

Grant succeeded.

SQL> grant sysdba to test;

Grant succeeded.

SQL> connect test/test as sysdba
Connected.
SQL> select user from dual;

USER
------------------------------
SYS

SQL> select * from v$pwfile_users;

USERNAME SYSDB SYSOP SYSAS
------------------------------ ----- ----- -----
SYS TRUE TRUE FALSE
TEST TRUE FALSE FALSE

关于oracle - 列出具有 root(管理)权限的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5356992/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com