• 今天遇到Oracle审计表AUD$数据过大问题


     

    How to truncate or delete rows from audit trail table sys.aud$

    1)Only appropriate privileged user can do delete operation on SYS.AUD$ table. The user must have either of the following privileges.
    -SYS user.
    -DELETE ANY TABLE system privilege. (If O7_DICTIONARY_ACCESSIBILITY=TRUE)
    -A user to whom SYS has granted the object privilege DELETE on SYS.AUD$ table.

    2)Before deleting any rows you may want to archive the table. You can achive this by creating a table from SYS.AUD$ and export that. Don't export SYS.AUD$ directly.
    SQL>CREATE TABLE AUDIT_RECORD TABLESPACE users as select * from SYS.AUD$;
    Now export the table as,
    SQL> host exp tables=AUDIT_RECORD file=audit_record.dmp

    3)To delete all records from audit trail table SYS.AUD$ issue,
    SQL>DELETE FROM SYS.AUD$;

    To delete all records of particular audited table from the audit trail issue,
    SQL>DELETE FROM sys.aud$ WHERE obj$name='&table_nmae';

    But deleting in this way will not reduce size on the system tablespace or aud$ table. In order to reduce size follow section 4.

    4)Truncate audit table to reduce size.
    SQL>CONN / as sysdba
    SQL>TRUNCATE TABLE SYS.AUD$

     

     

    oracle表空间操作详解

    作者:   来源:    更新日期:2006-01-04 

    建立表空间

    CREATE TABLESPACE data01
    DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M
    UNIFORM SIZE 128k;             #指定区尺寸为128k,如不指定,区尺寸默认为64k
    删除表空间

    DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
    修改表空间大小
        alter database datafile '/path/NADDate05.dbf' resize 100M                

     移动表至另一表空间
        alter table move tablespace room1;


     一、建立表空间
    CREATE TABLESPACE data01
    DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M
    UNIFORM SIZE 128k;             #指定区尺寸为128k,如不指定,区尺寸默认为64k

    二、建立UNDO表空间

    CREATE UNDO TABLESPACE UNDOTBS02
    DATAFILE '/oracle/oradata/db/UNDOTBS02.dbf' SIZE 50M

    #注意:在OPEN状态下某些时刻只能用一个UNDO表空间,如果要用新建的表空间,必须切换到该表空间:

    ALTER SYSTEM SET undo_tablespace=UNDOTBS02;

    三、建立临时表空间

    CREATE TEMPORARY TABLESPACE temp_data
    TEMPFILE '/oracle/oradata/db/TEMP_DATA.dbf' SIZE 50M

    四、改变表空间状态

    1.使表空间脱机

    ALTER TABLESPACE game OFFLINE;

    如果是意外删除了数据文件,则必须带有RECOVER选项

    ALTER TABLESPACE game OFFLINE FOR RECOVER;

    2.使表空间联机

    ALTER TABLESPACE game ONLINE;


    3.使数据文件脱机

    ALTER DATABASE DATAFILE 3 OFFLINE;

    4.使数据文件联机
     
    ALTER DATABASE DATAFILE 3 ONLINE;

    5.使表空间只读

    ALTER TABLESPACE game READ ONLY;

    6.使表空间可读写

    ALTER TABLESPACE game READ WRITE;

    五、删除表空间

    DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

    六、扩展表空间

    首先查看表空间的名字和所属文件

    select tablespace_name, file_id, file_name,
    round(bytes/(1024*1024),0) total_space
    from dba_data_files
    order by tablespace_name;

    1.增加数据文件
    ALTER TABLESPACE game
    ADD DATAFILE '/oracle/oradata/db/GAME02.dbf' SIZE 1000M;

    2.手动增加数据文件尺寸
    ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf'
    RESIZE 4000M;


    3.设定数据文件自动扩展
    ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf
    AUTOEXTEND ON NEXT 100M
    MAXSIZE 10000M;


    设定后查看表空间信息

    SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
    (B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"
    FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C
    WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME; 

  • 相关阅读:
    flowable流程中心设计之http监听器(十)
    flowable流程中心设计之自定义sql(十)
    flowable流程中心设计之相关表(十六)
    Spring Boot源码阅读自动化Starter原理(四)
    flowable流程中心设计之是否是发起人节点(十四)
    flowable流程中心设计之自动完成任务(十三)
    Spring源码系列导航
    设计思路判断是否有修改数据
    flowable流程中心设计之流程进度图扩展(十五)
    树莓派4B安装 百度飞桨paddlelite 做视频检测 (一、环境安装)
  • 原文地址:https://www.cnblogs.com/QDuck/p/1863387.html
Copyright © 2020-2023  润新知