墨天轮原文:https://www.modb.pro/db/21964?ywm

在Oracle 20c 中,传统审计(Traditional Auditing)不再支持,统一审计(Unified Auditing)成为主流。

官方文档的说明如下:

Deprecated Features:
The following features are deprecated in this release.Traditional auditingStarting in Oracle Database 20c, traditional auditing is deprecated.
Oracle recommends that you use unified auditing, which enables selective
and more effective auditing inside Oracle Database.

统一审计是 Oracle Database 12c 推出的一套全新的审计架构,通过利用策略和条件在 Oracle 数据库内部有选择地执行有效的审计。新架构将现有审计跟踪统一为单一审计跟踪,从而简化了管理,提高了数据库生成的审计数据的安全性。

统一审计可以通过 V$OPTION 视图查询其是否启用:

SQL> SELECT VALUE FROM V$OPTION WHERE PARAMETER = 'Unified Auditing';VALUE
----------------------------------------------------------------
FALSE

注意:由于 Bug 的影响,即使完全的统一审计有效的情况下, V$OPTION 的 Unified Auditing 行也表示为 FALSE 。

如果没有启用该特性,可以通过如下方式启用:

[oracle@enmotech 20c]$ cd $ORACLE_HOME/rdbms/lib
[oracle@enmotech lib]$ make -f ins_rdbms.mk uniaud_on ioracle
/usr/bin/ar cr /opt/oracle/20c/rdbms/lib/libknlopt.a /opt/oracle/20c/rdbms/lib/kzaiang.o
chmod 755 /opt/oracle/20c/bin- Linking Oracle
rm -f /opt/oracle/20c/rdbms/lib/oracle
/opt/oracle/20c/bin/orald  -o /opt/oracle/20c/rdbms/lib/oracle -m64 -z noexecstack -Wl,--disable-new-dtags -L/opt/oracle/20c/rdbms/lib/ -L/opt/oracle/20c/lib/ -L/opt/oracle/20c/lib/stubs/   -Wl,-E /opt/oracle/20c/rdbms/lib/opimai.o /opt/oracle/20c/rdbms/lib/ssoraed.o /opt/oracle/20c/rdbms/lib/ttcsoi.o -Wl,--whole-archive -lperfsrv -Wl,--no-whole-archive /opt/oracle/20c/lib/nautab.o /opt/oracle/20c/lib/naeet.o /opt/oracle/20c/lib/naect.o /opt/oracle/20c/lib/naedhs.o /opt/oracle/20c/rdbms/lib/config.o  -ldmext -lserver -loraodm -lofs -lcellst -lnnet -lskgxp -lsnls -lnls  -lcore -lsnls -lnls -lcore -lsnls -lnls -lxml -lcore -lunls -lsnls -lnls -lcore -lnls -lclient  -lvsnst -lcommon -lgeneric -lknlopt -loraolap -lskjcx -lslax -lpls  -lrt -lplp -ldmext -lserver -lclient  -lvsnst -lcommon -lgeneric `if [ -f /opt/oracle/20c/lib/libavserver.a ] ; then echo "-lavserver" ; else echo "-lavstub"; fi` `if [ -f /opt/oracle/20c/lib/libavclient.a ] ; then echo "-lavclient" ; fi` -lknlopt -lslax -lpls  -lrt -lplp -ljavavm -lserver  -lwwg  `cat /opt/oracle/20c/lib/ldflags`    -lncrypt -lnsgr -ln -lnl -lngsmshd -lnro `cat /opt/oracle/20c/lib/ldflags`    -lncrypt -lnsgr -ln -lnl -lngsmshd -lnnzst -lzt -lztkg -lmm -lsnls -lnls  -lcore -lsnls -lnls -lcore -lsnls -lnls -lxml -lcore -lunls -lsnls -lnls -lcore -lnls -lztkg `cat /opt/oracle/20c/lib/ldflags`    -lncrypt -lnsgr -ln -lnl -lngsmshd -lnro `cat /opt/oracle/20c/lib/ldflags`    -lncrypt -lnsgr -ln -lnl -lngsmshd -lnnzst -lzt -lztkg   -lsnls -lnls  -lcore -lsnls -lnls -lcore -lsnls -lnls -lxml -lcore -lunls -lsnls -lnls -lcore -lnls `if  /usr/bin/ar tv /opt/oracle/20c/rdbms/lib/libknlopt.a | grep "kxmnsd.o" > /dev/null 2>&1 ; then echo " " ; else echo "-lordsdo -lserver"; fi` -L/opt/oracle/20c/lib/ -lctxc -lctx -lzx -lgx -lctx -lzx -lgx -lclscest -loevm -lclsra -ldbcfg -lhasgen -lskgxn2 -lnnzst -lzt -lxml -lgeneric -locr -locrb -locrutl -lhasgen -lskgxn2 -lnnzst -lzt -lxml -lgeneric -lcell  -lgeneric -lorazip -loraz -llzopro5 -lorabz2 -lorazstd -loralz4 -lipp_z -lipp_bz2 -lippdc -lipps -lippcore  -lippcp -lsnls -lnls  -lcore -lsnls -lnls -lcore -lsnls -lnls -lxml -lcore -lunls -lsnls -lnls -lcore -lnls -lsnls -lunls -llxled  -lsnls -lnls  -lcore -lsnls -lnls -lcore -lsnls -lnls -lxml -lcore -lunls -lsnls -lnls -lcore -lnls -lasmclnt -lcommon -lcore  -ledtn -laio -lons  -lmql1 -lipc1  -lmql1 -lipc1 -lfthread    `cat /opt/oracle/20c/lib/sysliblist` -Wl,-rpath,/opt/oracle/20c/lib -lm    `cat /opt/oracle/20c/lib/sysliblist` -ldl -lm   -L/opt/oracle/20c/lib `test -x /usr/bin/hugeedit -a -r /usr/lib64/libhugetlbfs.so && test -r /opt/oracle/20c/rdbms/lib/shugetlbfs.o && echo -Wl,-zcommon-page-size=2097152 -Wl,-zmax-page-size=2097152 -lhugetlbfs`
rm -f /opt/oracle/20c/bin/oracle
mv /opt/oracle/20c/rdbms/lib/oracle /opt/oracle/20c/bin/oracle
chmod 6751 /opt/oracle/20c/bin/oracle
(if [ ! -f /opt/oracle/20c/bin/crsd.bin ]; then \getcrshome="/opt/oracle/20c/srvm/admin/getcrshome" ; \if [ -f "$getcrshome" ]; then \crshome="`$getcrshome`"; \if [ -n "$crshome" ]; then \if [ $crshome != /opt/oracle/20c ]; then \oracle="/opt/oracle/20c/bin/oracle"; \$crshome/bin/setasmgidwrap oracle_binary_path=$oracle; \fi \fi \fi \fi\);

现在来看:

[oracle@enmotech lib]$ sqlplus / as sysdbaSQL*Plus: Release 20.0.0.0.0 - Production on Mon Feb 17 09:16:03 2020
Version 20.2.0.0.0Copyright (c) 1982, 2020, Oracle.  All rights reserved.Connected to an idle instance.SQL> startup
ORACLE instance started.Total System Global Area  788529032 bytes
Fixed Size          9572232 bytes
Variable Size         515899392 bytes
Database Buffers      260046848 bytes
Redo Buffers            3010560 bytes
Database mounted.
Database opened.
SQL> SELECT VALUE FROM V$OPTION WHERE PARAMETER = 'Unified Auditing';VALUE
----------------------------------------------------------------
TRUE

禁用该功能,则需要反向操作:

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk uniaud_off ioracle

通过 audit_unified_enabled_policies 可以查询数据库中启用的审计策略:

SQL> select * from audit_unified_enabled_policies;POLICY_NAME            ENABLED_OPTION  ENTITY_NAME            ENTITY_ SUC FAI
------------------------------ --------------- ------------------------------ ------- --- ---
ORA_SECURECONFIG           BY USER         ALL USERS              USER    YES YES
ORA_LOGON_FAILURES         BY USER         ALL USERS              USER    NO  YES

通过统一审计功能 - unified auditing, 可以收集来自不同操作的审计信息,包括:

Fine-grained audit records from the DBMS_FGA PL/SQL packageOracle Database Real Application Security audit recordsOracle Recovery Manager audit recordsOracle Database Vault audit recordsOracle Label Security audit recordsOracle Machine Learning for SQL recordsOracle Data PumpOracle SQL*Loader Direct Load

审计信息记录在SYSAUX表空间的 AUDSYS 模式下,通过一个只读表 AUD$UNIFIED 存储 , 数据字典视图 UNIFIED_AUDIT_TRAIL 也可以用于查询,该字典还集合了 X$UNIFIED_AUDIT_TRAIL 的当前信息, 角色 AUDIT_ADMIN 和 AUDIT_VIEWER 用于控制权限。

SQL> select OWNER,SEGMENT_NAME,SEGMENT_TYPE,PARTITION_NAME,bytes/1024/1024 "MB"    2  from dba_segments where OWNER='AUDSYS';OWNER      SEGMENT_NAME           SEGMENT_TYPE         PARTITION_NAME                 MB
---------- ------------------------------ -------------------- ------------------------------ ----------
AUDSYS     AUD$UNIFIED            TABLE PARTITION      SYS_P301                .1875
AUDSYS     SYS_IL0000019480C00097$$   INDEX PARTITION      SYS_IL_P307             .0625
AUDSYS     SYS_IL0000019480C00031$$   INDEX PARTITION      SYS_IL_P305             .0625
AUDSYS     SYS_IL0000019480C00030$$   INDEX PARTITION      SYS_IL_P303             .0625
AUDSYS     SYS_LOB0000019480C00030$$      LOB PARTITION        SYS_LOB_P302              .25
AUDSYS     SYS_LOB0000019480C00031$$      LOB PARTITION        SYS_LOB_P304              .25
AUDSYS     SYS_LOB0000019480C00097$$      LOB PARTITION        SYS_LOB_P306              .25

这个特性的好处是:你不再需要担心 aud$ 占用大量空间了:

SQL> select count(*) from aud$;COUNT(*)
----------0

记录一下我的当前数据库的统一审计信息:

SQL> select action_name,sql_text from unified_audit_trail;ACTION_NAME            SQL_TEXT
------------------------------ --------------------------------------------------------------------------------
LOGON                  CONNECT
STARTUP                STARTUP
LOGON
SELECT                 SELECT DECODE(null,'','Total System Global Area','') NAME_COL_PLUS_SHOW_SGA,   S
ALTER DATABASE             ALTER DATABASE   MOUNT
LOGOFF
LOGON
ALTER TABLE            ALTER TABLE ts_set_table ADD CONSTRAINT ts_set_tsFOREIGN KEY (tablespace_namALTER TABLE             ALTER TABLE ts_set_table ADD CONSTRAINT ts_set_gtFOREIGN KEY (table_obj#)ALTER TABLE            alter table XDB.XDB$RESOURCE add (ref(xmldata.XMLREF) with rowid)
ALTER TABLE            alter table XDB.XDB$RESOURCE add (ref(xmldata.XMLREF) allow primary key)
ALTER TABLE            alter table xdb.xdb$tsetmapadd constraint xdb$tsetmap_uniq1 unique (guid,ALTER TABLE            ALTER TABLE "XDB"."XDB$SCHEMA" ADD (acloid RAW(16), ownerid RAW(16))
ALTER TABLE            ALTER TABLE "XDB"."XDB$ACL" ADD (acloid RAW(16), ownerid RAW(16))
ALTER TABLE            ALTER TABLE vncr ADD CONSTRAINT pk_vncr primary key(hostid)
ALTER TABLE            ALTER TABLE vncr ADD CONSTRAINT vncr_name UNIQUE(name)
ALTER TABLE            ALTER TABLE shard_space ADD CONSTRAINT ss_in_poolFOREIGN KEY (database_pool)ALTER TABLE             ALTER TABLE broker_configs ADD CONSTRAINT bk_in_shardspaceFOREIGN KEY (shardALTER TABLE             ALTER TABLE shard_group ADD CONSTRAINT sg_in_regionFOREIGN KEY (region_num)ALTER TABLE              ALTER TABLE shard_group ADD CONSTRAINT sg_in_shardspaceFOREIGN KEY (shardspaALTER TABLE             ALTER TABLE DATABASE ADD CONSTRAINT in_vncrFOREIGN KEY (hostid)REFERENCEALTER TABLE             ALTER TABLE DATABASE ADD CONSTRAINT in_shardgroupFOREIGN KEY (shardgroup_id)ALTER TABLE             ALTER TABLE DATABASE ADD CONSTRAINT in_drsetFOREIGN KEY (drset_number)REALTER TABLE             ALTER TABLE DATABASE ADD CONSTRAINT in_shardspaceFOREIGN KEY (shardspace_id)ALTER TABLE             ALTER TABLE database ADD CONSTRAINT name_unique UNIQUE(name)
ALTER TABLE            ALTER TABLE database ADD CONSTRAINT in_containerFOREIGN KEY (container)RALTER TABLE             ALTER TABLE shardkey_columns ADD CONSTRAINT sc_in_familyFOREIGN KEY (family_ALTER TABLE             ALTER TABLE service ADD CONSTRAINT in_familyFOREIGN KEY (table_family)REALTER TABLE             ALTER TABLE service_preferred_available ADD constraint fk_db_spaforeign key(ALTER TABLE             ALTER TABLE service_preferred_available ADD constraintpk_spa primary key(ALTER TABLE            ALTER TABLE service_preferred_available ADD constraintfk_sp_spa foreign kALTER TABLE            ALTER TABLE service_preferred_available ADD constraint spa_in_poolforeign keALTER TABLE             ALTER TABLE catalog_requests ADD CONSTRAINT cr_dbsrcFOREIGN KEY (source_db)ALTER TABLE              ALTER TABLE catalog_requests ADD CONSTRAINT cr_dbtrgtFOREIGN KEY (target_db)ALTER TABLE             ALTER TABLE catalog_requests ADD CONSTRAINT cr_databaseFOREIGN KEY (exec_db)ALTER TABLE             ALTER TABLE chunks ADD CONSTRAINT chunk_shardspaceFOREIGN KEY (shardspace_idALTER TABLE             ALTER TABLE all_chunks ADD CONSTRAINT allchunk_shardspaceFOREIGN KEY (shardsALTER TABLE             ALTER TABLE chunk_loc ADD CONSTRAINT cl_databaseFOREIGN KEY (database_num)ALTER TABLE               ALTER TABLE chunk_loc ADD CONSTRAINT cl_shardgroupFOREIGN KEY (shardgroup_idALTER TABLE             ALTER TABLE chunk_loc ADD CONSTRAINT cl_shardspaceFOREIGN KEY (shardspace_idALTER TABLE             ALTER TABLE chunk_loc ADD CONSTRAINT cl_chunkFOREIGN KEY (chunk_number, sharALTER TABLE             ALTER TABLE partition_set ADD CONSTRAINT ps_familyFOREIGN KEY (family_id)ALTER TABLE            ALTER TABLE tablespace_set ADD CONSTRAINT ts_familyFOREIGN KEY (family_id)ALTER TABLE               ALTER TABLE tablespace_set ADD CONSTRAINT ts_partsetFOREIGN KEY (partition_sALTER TABLE             ALTER TABLE shard_ts ADD CONSTRAINT sts_tsFOREIGN KEY (tablespace_set)REALTER TABLE             ALTER TABLE global_table ADD CONSTRAINT gt_familyFOREIGN KEY (family_id)ALTER TABLE             alter table wmsys.wm$ric_table add constraint wm$ric_pk primary key (ct_owner, r
ALTER TABLE            alter table wmsys.wm$ric_triggers_table add constraint wm$ric_triggers_pk primar
ALTER TABLE            alter table wmsys.wm$insteadof_trigs_table add constraint wm$insteadof_trigs_pk
ALTER TABLE            alter table wmsys.wm$workspaces_table add constraint wm$workspaces_pk primary ke
ALTER TABLE            alter table wmsys.wm$version_table add constraint wm$version_pk primary key (wor
ALTER TABLE            alter table wmsys.wm$version_hierarchy_table add constraint wm$version_hierarchy
ALTER TABLE            alter table wmsys.wm$versioned_tables add constraint wm$versioned_tables__pk pri
ALTER TABLE            alter table wmsys.wm$workspace_sessions_table add constraint wm$workspace_sessio
ALTER TABLE            alter table wmsys.wm$workspace_savepoints_table add constraint wm$workspace_save
ALTER TABLE            alter table wmsys.wm$modified_tables add constraint modified_tables_pk primary k
ALTER TABLE            alter table wmsys.wm$udtrig_info add constraint wm$udtrig_info_pk primary key (t
ALTER TABLE            alter table wmsys.wm$udtrig_dispatch_procs add constraint wm$udtrig_dispatch_pro
ALTER TABLE            alter table wmsys.wm$resolve_workspaces_table add constraint wm$resolve_workspac
ALTER TABLE            alter table wmsys.wm$vt_errors_table add constraint wm$vt_errors_pk primary key
ALTER TABLE            alter table wmsys.wm$env_vars add constraint wm$env_vars_pk primary key (name)
ALTER TABLE            alter table WMSYS.WM$workspaces_table modify freeze_mode varchar2(20)
ALTER TABLE            alter table WMSYS.WM$workspaces_table add freeze_owner varchar2(30)
ALTER TABLE            alter table WMSYS.WM$workspaces_table add session_duration integer
ALTER TABLE            alter table WMSYS.WM$versioned_tables add (sitesList varchar2(4000))
ALTER TABLE            alter table WMSYS.WM$versioned_tables add(repSiteCount integer default 0)
ALTER TABLE            alter table wmsys.wm$nested_columns_table add constraint wm$nested_columns_pk pr
ALTER TABLE            alter table WMSYS.WM$workspaces_table add(implicit_sp_cnt integer default 0)
ALTER TABLE            alter table wmsys.wm$constraints_table add constraint wm$constraints_table_pk pr
ALTER TABLE            alter table wmsys.wm$hint_table add constraint hint_table_unq1 unique(hint_id, o
ALTER TABLE            alter table WMSYS.WM$udtrig_info rename column trig_type to trig_flag
ALTER TABLE            alter table WMSYS.WM$udtrig_info add (event_flag integer)
ALTER TABLE            alter table WMSYS.WM$udtrig_info add (tmp_flag integer)
ALTER TABLE            alter table WMSYS.WM$udtrig_info modify (trig_flag integer)
ALTER TABLE            alter table WMSYS.WM$udtrig_info drop (tmp_flag, TAB_MERGE_WO_REMOVE_COL, TAB_ME
ALTER TABLE            alter table WMSYS.WM$udtrig_dispatch_procs add (trig_flag integer)
ALTER TABLE            alter table WMSYS.WM$udtrig_dispatch_procs drop (bir_flag, air_flag, bur_flag, a
ALTER TABLE            alter table WMSYS.WM$env_vars add (hidden integer default 0)
ALTER TABLE            alter table wmsys.wm$constraints_table drop constraint wm$constraints_table_pk
ALTER TABLE            alter table wmsys.wm$constraints_table add constraint wm$constraints_table_pk pr
ALTER TABLE            alter table wmsys.WM$RIC_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$RIC_TRIGGERS_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$WORKSPACES_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$VERSION_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$VERSION_HIERARCHY_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$VERSIONED_TABLES drop primary key drop index
ALTER TABLE            alter table wmsys.WM$SYSPARAM_ALL_VALUES drop primary key drop index
ALTER TABLE            alter table wmsys.WM$WORKSPACE_SAVEPOINTS_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$MODIFIED_TABLES drop primary key drop index
ALTER TABLE            alter table wmsys.WM$UDTRIG_DISPATCH_PROCS drop primary key drop index
ALTER TABLE            alter table wmsys.WM$RESOLVE_WORKSPACES_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$VT_ERRORS_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$ENV_VARS drop primary key drop index
ALTER TABLE            alter table wmsys.WM$REPLICATION_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$NESTED_COLUMNS_TABLE drop primary key drop index
ALTER TABLE            alter table WMSYS.WM$versioned_tables add (bl_workspace varchar2(30))
ALTER TABLE            alter table WMSYS.WM$versioned_tables add (bl_version integer)
ALTER TABLE            alter table WMSYS.WM$workspaces_table add (cr_status varchar2(20))
ALTER TABLE            alter table WMSYS.WM$workspaces_table add (sync_parver integer)
ALTER TABLE            alter table WMSYS.WM$workspaces_table add (last_change date default sysdate)
ALTER TABLE            alter table WMSYS.WM$workspaces_table add (depth integer)
ALTER TABLE            alter table WMSYS.WM$version_table add (anc_depth integer)
ALTER TABLE            alter table wmsys.wm$sysparam_all_values add constraint wm$env_sys_pk primary ke
ALTER TABLE            alter table WMSYS.WM$udtrig_info add (internal_type     varchALTER TABLE            alter table WMSYS.WM$workspaces_table add (mp_root varchar2(30) default null)
ALTER TABLE            alter table WMSYS.WM$version_table add (refCount integer default 1)
ALTER TABLE            alter table wmsys.wm$mp_parent_workspaces_table add constraint wm$mp_parent_pk p
ALTER TABLE            alter table wmsys.wm$mp_graph_workspaces_table add constraint wm$mp_graph_worksp
ALTER TABLE            alter table wmsys.wm$workspaces_table add constraint workspace_lock_id_unq uniqu
ALTER TABLE            alter table WMSYS.WM$udtrig_info add(TABLE_IMPORT_COL varchar2(4) default 'ON')
ALTER TABLE            alter table WMSYS.WM$constraints_table modify (search_condition clob)
ALTER TABLE            alter table WMSYS.WM$udtrig_info modify (trig_code clob)
ALTER TABLE            alter table wmsys.wm$replication_table add (isWriterSite varchar2(1))
ALTER TABLE            alter table WMSYS.WM$versioned_tables add(validTime integer default 0)
ALTER TABLE            alter table WMSYS.WM$versioned_tables add (initVTRange wmsys.wm_period)
ALTER TABLE            alter table wmsys.wm$replication_table add (status varchar2(1) default 'E')
ALTER TABLE            alter table wmsys.wm$adt_func_table add constraint wm$adt_func_tab_pk primary ke
ALTER TABLE            alter table wmsys.wm$log_table add constraint log_tab_pk primary key(group#, ord
ALTER TABLE            alter table wmsys.wm$removed_workspaces_table add constraint removed_workspaces_
ALTER TABLE            ALTER TABLE "XDB"."XDB$RESCONFIG" ADD (acloid RAW(16), ownerid RAW(16))
ALTER TABLE            alter table xdb.xdb$resconfig add (refcount number default 0)
ALTER TABLE            alter table xdb.xdb$dxptab add (tablespace varchar2(128))
ALTER TABLE            alter table xdb.xdb$dxptab add (table_attrs varchar2(4000))
ALTER TABLE            alter table xdb.xdb$dxptab add (nbpendtabobj# number)
ALTER TABLE            alter table xdb.xdb$dxptab add (nberrtabobj# number)
ALTER TABLE            ALTER TABLE "XDB"."XDB$STATS" ADD (acloid RAW(16), ownerid RAW(16))
ALTER TABLE            ALTER TABLE "XDB"."XDB$CONFIG" ADD (acloid RAW(16), ownerid RAW(16))
ALTER TABLE            alter table XDB.JSON$COLLECTION_METADATAadd constraint JSON$COLLECTIALTER TABLE             alter table sys.mvref$_stmt_stats add execution_plan xmltype
ALTER TABLE            alter table wmsys.WM$MP_PARENT_WORKSPACES_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$MP_GRAPH_WORKSPACES_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$EVENTS_INFO drop primary key drop index
ALTER TABLE            alter table wmsys.WM$REMOVED_WORKSPACES_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.WM$UDTRIG_INFO drop primary key drop index
ALTER TABLE            alter table wmsys.WM$CONSTRAINTS_TABLE drop primary key drop index
ALTER TABLE            alter table wmsys.wm$workspaces_table$ add constraint wm$workspaces_pk primary k
ALTER TABLE            alter table wmsys.wm$workspaces_table$ add constraint wm$workspace_lock_id_unq u
ALTER TABLE            alter table wmsys.wm$versioned_tables_undo_code rename to wm$undo_code
ALTER TABLE            alter table wmsys.wm$versioned_tables$ add constraint wm$versioned_tables__pk pr
ALTER TABLE            alter table wmsys.wm$env_vars$ add constraint wm$env_vars_pk primary key(name)
ALTER TABLE            alter table wmsys.wm$events_info$ add constraint wm$events_info_pk primary key(e
ALTER TABLE            alter table wmsys.wm$modified_tables$ add constraint wm$modified_tables_pk prima
ALTER TABLE            alter table wmsys.wm$mp_graph_workspaces_table$ add constraint wm$mp_graph_works
ALTER TABLE            alter table wmsys.wm$mp_parent_workspaces_table$ add constraint wm$mp_parent_pk
ALTER TABLE            alter table wmsys.wm$nested_columns_table$ add constraint wm$nested_columns_pk p
ALTER TABLE            alter table wmsys.wm$removed_workspaces_table$ add constraint wm$removed_workspa
ALTER TABLE            alter table wmsys.wm$replication_table$ add constraint wm$rep_details_pk primary
ALTER TABLE            alter table wmsys.wm$resolve_workspaces_table$ add constraint wm$resolve_workspa
ALTER TABLE            alter table wmsys.wm$ric_table$ add constraint wm$ric_pk primary key(ct_vtid#, r
ALTER TABLE            alter table wmsys.wm$ric_triggers_table$ add constraint wm$ric_triggers_pk prima
ALTER TABLE            alter table wmsys.wm$sysparam_all_values$ add constraint wm$env_sys_pk primary k
ALTER TABLE            alter table wmsys.wm$udtrig_dispatch_procs$ add constraint wm$udtrig_dispatch_pr
ALTER TABLE            alter table wmsys.wm$udtrig_info$ add constraint wm$udtrig_info_pk primary key(t
ALTER TABLE            alter table wmsys.wm$version_hierarchy_table$ add constraint wm$version_hierarch
ALTER TABLE            alter table wmsys.wm$version_table$ add constraint wm$version_pk primary key(wor
ALTER TABLE            alter table wmsys.wm$vt_errors_table$ add constraint wm$vt_errors_pk primary key
ALTER TABLE            alter table wmsys.wm$workspace_savepoints_table$ add constraint wm$workspace_sav
ALTER TABLE            alter table wmsys.wm$workspaces_table$ drop constraint wm$workspace_lock_id_unq
ALTER TABLE            alter table wmsys.wm$workspaces_table$ drop constraint wm$workspaces_pk
ALTER TABLE            alter table wmsys.wm$workspaces_table$ add constraint wm$workspaces_pk primary k
ALTER TABLE            alter table wmsys.wm$workspaces_table$ modify (workspace not null)
ALTER TABLE            alter table WMSYS.WM$mp_parent_workspaces_table$ drop column workspace_lock_id
ALTER TABLE            alter table wmsys.wm$version_table$ modify refcount default null
ALTER TABLE            alter table wmsys.wm$workspaces_table$ modify implicit_sp_cnt default null
ALTER TABLE            alter table wmsys.wm$workspaces_table$ modify last_change default null
ALTER TABLE            alter table WMSYS.WM$constraints_table$ add(owner varchar2(128))
ALTER TABLE            ALTER TABLE SYSTEM.HELPADD CONSTRAINT HELP_TOPIC_SEQPRIMARY KEY (TOPIC, SECREATE SYNONYM            CREATE PUBLIC SYNONYM PRODUCT_PROFILE FOR SYSTEM.PRODUCT_PRIVS
CREATE SYNONYM             CREATE PUBLIC SYNONYM PRODUCT_USER_PROFILE FOR SYSTEM.PRODUCT_PRIVS
ALTER DATABASE             ALTER DATABASE OPEN
ALTER USER             ALTER USER ggsys QUOTA unlimited ON sysaux
ALTER USER             alter user anonymous account lock
ALTER USER             alter user DBSNMP set container_data=all
ALTER USER             alter USER APPQOSSYS set container_data=all for "PUBLIC".v$wlm_pcmetric
ALTER USER             alter USER APPQOSSYS set container_data=all for "PUBLIC".v$wlm_pcservice
ALTER USER             alter USER APPQOSSYS set container_data=all for dba_pdbs
ALTER USER             alter USER APPQOSSYS set container_data=all for "PUBLIC".v$containers
ALTER USER             alter USER APPQOSSYS set container_data=all for "PUBLIC".v$wlm_db_mode
ALTER USER             alter USER APPQOSSYS set container_data=all for "PUBLIC".gv$wlm_db_mode
ALTER USER             alter user gsmadmin_internal set container_data = all  for cdb_services containe
ALTER USER             alter user gsmadmin_internal set container_data = all  for "PUBLIC".gv$active_se
ALTER USER             alter user "DBSNMP" account lock
ALTER USER             alter user "APPQOSSYS" account lock
ALTER USER             alter user "GSMCATUSER" account lock
ALTER USER             alter user "DBSFWUSER" account lock
ALTER USER             alter user "SYSBACKUP" account lock
ALTER USER             alter user "REMOTE_SCHEDULER_AGENT" account lock
ALTER USER             alter user "GGSYS" account lock
ALTER USER             alter user "ANONYMOUS" password expire account lock
ALTER USER             alter user "GSMUSER" account lock
ALTER USER             alter user "GSMROOTUSER" account lock
ALTER USER             alter user "AUDSYS" account lock
ALTER USER             alter user "GSMADMIN_INTERNAL" account lock
ALTER USER             alter user "SYSKM" account lock
ALTER USER             alter user "DGPDB_INT" account lock
ALTER USER             alter user "OUTLN" account lock
ALTER USER             alter user "SYS$UMF" account lock
ALTER USER             alter user "ORACLE_OCM" account lock
ALTER USER             alter user "XDB" account lock
ALTER USER             alter user "WMSYS" account lock
ALTER USER             alter user "SYSDG" account lock
CREATE ROLE            CREATE ROLE ggsys_role
CREATE ROLE            CREATE role xdbadmin
CREATE ROLE            create role OEM_ADVISOR
CREATE ROLE            create role OEM_MONITOR
CREATE ROLE            CREATE ROLE gsmadmin_role
CREATE ROLE            CREATE ROLE gsm_pooladmin_role
CREATE ROLE            CREATE ROLE gds_catalog_select
CREATE ROLE            create role wm_admin_role
CREATE ROLE            create role XDB_SET_INVOKER
CREATE ROLE            create role authenticatedUser
CREATE ROLE            create role XDB_WEBSERVICES
CREATE ROLE            create role XDB_WEBSERVICES_WITH_PUBLIC
CREATE ROLE            create role XDB_WEBSERVICES_OVER_HTTP
CREATE ROLE            create role SODA_APP
CREATE ROLE            CREATE ROLE datapatch_role
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XSDDIR AS '/opt/oracle/20c/rdbms/xml/schema'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XMLDIR AS '/opt/oracle/20c/rdbms/xml'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY ORACLE_OCM_CONFIG_DIR AS '/scratch/app/user/homes/Or
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY ORACLE_OCM_CONFIG_DIR2 AS '/scratch/app/user/homes/O
CREATE DIRECTORY           CREATE OR REPLACE directory opatch_log_dir AS '/scratch/app/user/homes/OraDB20Ho
CREATE DIRECTORY           CREATE OR REPLACE directory opatch_script_dir AS '/opt/oracle/20c/QOpatch'
CREATE DIRECTORY           CREATE OR REPLACE directory opatch_inst_dir AS '/opt/oracle/20c/OPatch'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XSDDIR AS '/opt/oracle/20c/rdbms/xml/schema'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XSDDIR AS '/opt/oracle/20c/rdbms/xml/schema'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XSDDIR AS '/opt/oracle/20c/rdbms/xml/schema'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XSDDIR AS '/opt/oracle/20c/rdbms/xml/schema'
CREATE DIRECTORY           CREATE OR REPLACE DIRECTORY XSDDIR AS '/opt/oracle/20c/rdbms/xml/schema'
ALTER PLUGGABLE DATABASE       alter pluggable database application app$cdb$pdbonly$ncdbtopdb end upgrade
ALTER PLUGGABLE DATABASE       alter pluggable database application app$cdb$pdbonly$ncdbtopdb purge
ALTER PLUGGABLE DATABASE       alter pluggable database application app$cdb$pdbonly$ncdbtopdb begin install '1.
ALTER PLUGGABLE DATABASE       alter pluggable database close immediate instances=all
ALTER PLUGGABLE DATABASE       alter pluggable database open upgrade
ALTER PLUGGABLE DATABASE       alter pluggable database application app$cdb$pdbonly$ncdbtopdb end install
ALTER PLUGGABLE DATABASE       alter pluggable database application app$cdb$pdbonly$ncdbtopdb begin upgrade to
ALTER PLUGGABLE DATABASE       ALTER PLUGGABLE DATABASE close immediate instances=all
ALTER PLUGGABLE DATABASE       ALTER PLUGGABLE DATABASE OPEN
ALTER PLUGGABLE DATABASE       alter pluggable database pdb$seed close
ALTER PLUGGABLE DATABASE       alter pluggable database pdb$seed open
ALTER AUDIT POLICY         ALTER AUDIT POLICY ORA_SECURECONFIGADD ACTIONS EXECUTE ON remote_scheduler_ag

AUDIT 让数据库安全起来!

Oracle 20c 不再支持特性:传统审计不支持 统一审计(Unified Auditing)成主流相关推荐

  1. 资源放送丨Oracle 20C DataGuard 新特性解读PPT视频

    前段时间,墨天轮分享了云和恩墨高级工程师 章芋文 带来的直播< Oracle 20C DataGuard 新特性解读>,在这里我们共享一下PPT和视频,供大家参考学习. 从Oracle官方 ...

  2. Oracle 20c 新特性详解:SQL Macro 宏 SCALAR / TABLE 模式带来的敏捷和便利

    导读:在 Oracle 20c 中,SQL的宏支持 - SQL Macro 为 SQL 开发带来了进一步的敏捷和便利,在这篇文章中,我们来详细了解一下 SQL Macro 的特性用法. 以下是概要介绍 ...

  3. 最好的浏览器排行榜_PG是最好的数据库;TiDB 4.0前瞻;SequoiaDB高可用原理;20c DG新特性... 数据库周刊第18期...

    热门资讯 1. 2020年4月数据库流行度排行:MySQL 成事实王者,国产openGauss引期待 [摘要]2020年4月 DB-Engines 数据库流行度排行出炉.在本月的排行榜上,Oracle ...

  4. Oracle 20c 新特性:SQL 宏支持(SQL Macro)Scalar 和 Table 模式

    SQL宏特性,允许开发人员将复杂的处理通过宏定义实现,随后可以在 SQL 中任何位置调用宏.这个特性的实现类似于12c中实现的 Function in SQL 特性. 在 Oracle Databas ...

  5. Oracle 20c 新特性:XGBoost 机器学习算法和 AutoML 的支持

    墨墨导读:XGBoost是一个高效.可扩展的机器学习算法,用于回归和分类(regression and classification),使得XGBoost Gradient Boosting开源包可用 ...

  6. Oracle 20c 新特性:缺省的只读 Oracle HOME 支持

    墨墨导读:在 20c 之前,缺省的 ORACLE_HOME 布局将 ORACLE_HOME.ORACLE_BASE_HOME 和 ORACLE_BASE_CONFIG 合并到一个位置.从 20c 开始 ...

  7. Oracle 20c 新特性知多少?ANSI SQL 全支持之 EXCEPT 运算符增强

    导读:在 Oracle 20c 中,Oracle 增加了对于集合运算符的增强,全部支持了 ANSI SQL 标准的关键字,新增了 EXCEPT 关键字支持. 在 Oracle 20c 中,Oracle ...

  8. oracle 11g ocfs,Oracle 将不再提供ASMlib和OCFS2软件和支持给红帽 RedHat 6的新发行版

    Oracle 将不再提供ASMlib和OCFS2软件和支持给红帽的新发行版,这是两则与Linux和数据库相关的重要通知,部分重要内容给大家翻译如下: 1)ASMLib 1.1)ASMLib是Oracl ...

  9. oracle20c最新版本,Oracle DUL支持Oracle 20c

    之前测试过<DUL 支持Oracle 19c>,目前ORACLE 20C官方文档已发布, 按惯例2020年第一季度会发布ON cloud平台版本和工程系统,第二季度会发布可下载非工程系统版 ...

最新文章

  1. python实现数据库查询_通过Python实现mysql查询数据库实例
  2. python3菜鸟-菜鸟笔记Python3——数据可视化(一)
  3. EventBus使用实例,观察者模式
  4. Luogu1979 NOIP2013D2T3 华容道 搜索、最短路
  5. 计算机无法从硬盘启动怎么办,电脑不能从硬盘启动应该怎么解决
  6. nginx 负载均衡 最初级版本
  7. HNU 实验五松雅的旅馆
  8. mysql主库从库在同一台服务器_通过两种方式增加从库——不停止mysql服务
  9. python怎么隔一个读取一个_Python实现中一次读取多个值的方法
  10. 计算机系统结构02325知识点,02325计算机系统结构复习资料.doc
  11. 一个小型的汇编编译器
  12. 计算机日志查询域用户登录记录,Windows域控制器身份验证登录日志记录和取证...
  13. unity打开excel表格_unity创建编辑读取EXCEL文件表格数据游戏插件工具Uni-Excel 1.0
  14. 安装 OpenCC 简繁体中文转换
  15. 微信撤回消息在服务器可以看到吗,微信撤回消息可以查看了,对方撤回了什么一目了然...
  16. 那些年你追过的女神:开发人员应该懂多少运维
  17. 蚂蚁金服-支付宝内推面试总结(已拿到offer)
  18. 分体式降噪耳机有哪些?高配置分体式降噪耳机排行榜
  19. 【一个王朝的背影】--余秋雨
  20. 智能车图像处理逆透视教程

热门文章

  1. Luogu P1535 【游荡的奶牛】
  2. 51单片机ALE引脚
  3. 相机的内外参与相机标定
  4. 公鸡3块钱1只,母鸡5块钱1只,小鸡1块钱3只,用100块买100只鸡,一共多少种买法,分别是什么?
  5. 数字后端Floorplan概念合集(二)
  6. 蚂蚁开放平台—获取支付宝用户信息
  7. 鲁泰纺织:在行业整合中稳健前行
  8. 如何避免用户“漫天要价”和“就地还钱”
  9. 复数java实验_java实验 复数
  10. 利用百度地图sdk实现定位