要把 SYS.FGA_LOG$ 表从 SYSTEM 表空间迁移到自定义的普通表空间(如 AUDIT_TBS),最推荐、最安全的方式是使用 Oracle 提供的系统包:
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION
这是 Oracle 官方支持的方式,适用于 11g R2 及以上版本。步骤如下:
- 创建新的普通表空间(如已创建可跳过)
CREATE TABLESPACE audit_tbs
DATAFILE ‘/u01/app/oracle/oradata/ORCL/audit_tbs01.dbf’
SIZE 2G AUTOEXTEND ON NEXT 100M MAXSIZE 20G;
- 迁移 FGA_LOG$ 表到新表空间
BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION(
audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_FGA_STD,
audit_trail_location_value => ‘AUDIT_TBS’);
END;
/
- 验证迁移结果
SELECT table_name, tablespace_name
FROM dba_tables
WHERE table_name = ‘FGA_LOG$’ AND owner = ‘SYS’;
✅ 可选:迁移 AUD$ 表(如你也想迁)
BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION(
audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD,
audit_trail_location_value => ‘AUDIT_TBS’);
END;
/

1462

被折叠的 条评论
为什么被折叠?



