【问题标题】:What Roles or Privileges are needed for ALTER DATABASE ADD SUPPLEMENTAL LOG DATA?ALTER DATABASE ADD SUPPLEMENTAL LOG DATA 需要哪些角色或权限?
【发布时间】:2022-01-27 09:14:49
【问题描述】:

当我试图让 logminer 记录我的数据库时,我正在尝试运行以下命令。当我运行以下命令时,我得到了 Insufficient Privileges 的响应

ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;

我必须以特定用户的身份运行它,所以我需要知道运行此语句需要哪些授予角色和/或系统权限。

【问题讨论】:

  • SQL Language Reference中的语句解释中列出了任何 sql 语句的 prereqs,包括必要的授权 privs。

标签: oracle oracle11g


【解决方案1】:

我不是 DBA(类似的东西 应该由 DBA 运行),但是:特权用户应该授予您权限(正如您所说,您将自己运行它) ALTER DATABASE 特权:

scott 只是一个可怜的用户:

SQL> show user
USER is "SCOTT"
SQL>
SQL> alter database add supplemental log data;
alter database add supplemental log data
*
ERROR at line 1:
ORA-01031: insufficient privileges

特权用户是SYS(如果您没有其他用户):

SQL> connect sys as sysdba
Enter password:
Connected.
SQL> grant alter database to scott;

Grant succeeded.

返回scott,重新运行语句:

SQL> connect scott/tiger
Connected.
SQL> alter database add supplemental log data;

Database altered.

SQL>

这是最小值。您也可以将 DBA 角色授予scott,效果相同(关于这句话,但是 - DBA 更强大):

为了说明,先撤销权限:

SQL> connect sys as sysdba
Enter password:
Connected.
SQL> revoke alter database from scott;

Revoke succeeded.

它仍然有效吗?当然不是:

SQL> connect scott/tiger
Connected.
SQL> alter database add supplemental log data;
alter database add supplemental log data
*
ERROR at line 1:
ORA-01031: insufficient privileges

授予 DBA 角色:

SQL> connect sys as sysdba
Enter password:
Connected.
SQL> grant dba to scott;

Grant succeeded.

现在可以用了吗?是的,确实如此:

SQL> connect scott/tiger
Connected.
SQL> alter database add supplemental log data;

Database altered.

SQL>

【讨论】:

    猜你喜欢
    • 2013-01-18
    • 2021-01-24
    • 2014-08-28
    • 1970-01-01
    • 1970-01-01
    • 2015-12-28
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多