清理Oracle資料庫大量的SYS使用者審計跟蹤檔案
由於配置了一些計劃任務,導致在adump目錄下產生了大量的SYS使用者登入的審計跟蹤檔案,可以看到目前/u01掛載點的inode已經使用了28%,數量達到了800多萬個,說明審計跟蹤檔案差不多有800萬個左右。
[oracle@DB1 ~]$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 1310720 108775 1201945 9% /
tmpfs 2041784 268 2041516 1% /dev/shm
/dev/sda1 51200 39 51161 1% /boot
/dev/sda4 29876224 8118425 21757799 28% /u01
/dev/sdb1 6553600 30 6553570 1% /arch
/dev/mapper/vg-data 32112640 49 32112591 1% /data
使用rsync是比較快速刪除大量小檔案的方法。用時大約12小時,平均每小時刪除65萬個左右。
[oracle@DB1 DB1]$ mkdir blank
[oracle@DB1 DB1]$ rsync -a --delete blank/ adump/
刪除後inode使用率降到了1%。
[oracle@DB1 ~]$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 1310720 108773 1201947 9% /
tmpfs 2041784 268 2041516 1% /dev/shm
/dev/sda1 51200 39 51161 1% /boot
/dev/sda4 29876224 120039 29756185 1% /u01
/dev/sdb1 6553600 32 6553568 1% /arch
/dev/mapper/vg-data 32112640 50 32112590 1% /data
刪除adump目錄下的檔案後,adump目錄仍舊佔用了600多M空間,更改資料庫的audit_file_dest,刪除adump,釋放空間。
[oracle@DB1 DB1]$ ll /u01/app/oracle/admin/DB1/
drwxr-xr-x 2 oracle oinstall 647413760 May 14 16:01 adump
SQL> alter system set audit_file_dest='/u01/app/oracle/admin/DB1/adump1' scope=spfile;
System altered.
SQL> show parameter audit
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string /u01/app/oracle/admin/DB1/
adump
audit_sys_operations boolean FALSE
audit_syslog_level string
audit_trail string NONE
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 8818814976 bytes
Fixed Size 2260408 bytes
Variable Size 4664066632 bytes
Database Buffers 4127195136 bytes
Redo Buffers 25292800 bytes
Database mounted.
Database opened.
SQL> show parameter audit
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string /u01/app/oracle/admin/DB1/
adump1
audit_sys_operations boolean FALSE
audit_syslog_level string
audit_trail string NONE
[oracle@DB1 DB1]$ rm -fr adump
然後配置刪除審計跟蹤檔案的計劃任務。
[oracle@DB1 scripts]$ pwd
/home/oracle/scripts
[oracle@DB1 scripts]$ cat delaud.sh
#!/bin/bash
. /home/oracle/.bash_profile
cd /u01/app/oracle/admin/DB1
rsync -a --delete blank/ adump1/
[oracle@DB1 scripts]$ crontab -e
00 18 * * * /home/oracle/scripts/delaud.sh >/dev/null 2>&
[oracle@DB1 ~]$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 1310720 108775 1201945 9% /
tmpfs 2041784 268 2041516 1% /dev/shm
/dev/sda1 51200 39 51161 1% /boot
/dev/sda4 29876224 8118425 21757799 28% /u01
/dev/sdb1 6553600 30 6553570 1% /arch
/dev/mapper/vg-data 32112640 49 32112591 1% /data
使用rsync是比較快速刪除大量小檔案的方法。用時大約12小時,平均每小時刪除65萬個左右。
[oracle@DB1 DB1]$ mkdir blank
[oracle@DB1 DB1]$ rsync -a --delete blank/ adump/
刪除後inode使用率降到了1%。
[oracle@DB1 ~]$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 1310720 108773 1201947 9% /
tmpfs 2041784 268 2041516 1% /dev/shm
/dev/sda1 51200 39 51161 1% /boot
/dev/sda4 29876224 120039 29756185 1% /u01
/dev/sdb1 6553600 32 6553568 1% /arch
/dev/mapper/vg-data 32112640 50 32112590 1% /data
刪除adump目錄下的檔案後,adump目錄仍舊佔用了600多M空間,更改資料庫的audit_file_dest,刪除adump,釋放空間。
[oracle@DB1 DB1]$ ll /u01/app/oracle/admin/DB1/
drwxr-xr-x 2 oracle oinstall 647413760 May 14 16:01 adump
SQL> alter system set audit_file_dest='/u01/app/oracle/admin/DB1/adump1' scope=spfile;
System altered.
SQL> show parameter audit
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string /u01/app/oracle/admin/DB1/
adump
audit_sys_operations boolean FALSE
audit_syslog_level string
audit_trail string NONE
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 8818814976 bytes
Fixed Size 2260408 bytes
Variable Size 4664066632 bytes
Database Buffers 4127195136 bytes
Redo Buffers 25292800 bytes
Database mounted.
Database opened.
SQL> show parameter audit
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string /u01/app/oracle/admin/DB1/
adump1
audit_sys_operations boolean FALSE
audit_syslog_level string
audit_trail string NONE
[oracle@DB1 DB1]$ rm -fr adump
然後配置刪除審計跟蹤檔案的計劃任務。
[oracle@DB1 scripts]$ pwd
/home/oracle/scripts
[oracle@DB1 scripts]$ cat delaud.sh
#!/bin/bash
. /home/oracle/.bash_profile
cd /u01/app/oracle/admin/DB1
rsync -a --delete blank/ adump1/
[oracle@DB1 scripts]$ crontab -e
00 18 * * * /home/oracle/scripts/delaud.sh >/dev/null 2>&
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28536251/viewspace-2139044/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【LOG】Oracle資料庫清理日誌、跟蹤檔案利器Oracle資料庫
- oracle資料庫sys使用者的審計(網文摘錄)Oracle資料庫
- Oracle跟蹤檔案Oracle
- Oracle資料庫跟蹤SQLOracle資料庫SQL
- [zt] oracle跟蹤檔案與跟蹤事件Oracle事件
- oracle跟蹤檔案與跟蹤事件(zt)Oracle事件
- oracle跟蹤檔案和跟蹤事件(zt)Oracle事件
- 把資料庫控制檔案備份到跟蹤檔案資料庫
- Oracle跟蹤檔案trace檔案Oracle
- tkprof: 分析ORACLE跟蹤檔案Oracle
- 資料庫引數檔案控制檔案日誌檔案資料檔案跟蹤檔案等8大檔案的字典資料庫
- Oracle:審計清理Oracle
- 檔案-跟蹤檔案
- 使用 Tkprof 分析 ORACLE 跟蹤檔案Oracle
- oracle 跟蹤檔案理論整理Oracle
- Oracle 跟蹤檔案和檔案轉儲(dump)Oracle
- 審計Oracle資料庫的使用Oracle資料庫
- ORACLE 10046 設定跟蹤事件後無跟蹤檔案Oracle事件
- 轉:使用 Tkprof 分析 ORACLE 跟蹤檔案Oracle
- ORACLE 跟蹤檔案詳細解釋Oracle
- 控制檔案的跟蹤檔案全文
- sql server跟蹤資料庫SQLServer資料庫
- 資料庫資料跟蹤記錄資料庫
- 跟蹤 sql 的trace檔案SQL
- ORACLE 資料庫審計詳解Oracle資料庫
- ORACLE資料庫標準審計Oracle資料庫
- oracle 審計日誌清理Oracle
- 配置計劃任務定期清理資料庫trc檔案資料庫
- Oracle 跟蹤全部使用者Oracle
- oracle 跟蹤其他使用者Oracle
- 新增時--sqlserver資料庫跟蹤SQLServer資料庫
- Oracle 跟蹤/告警/監聽日誌的清理指令碼Oracle指令碼
- 解析listener跟蹤檔案
- git 忽略跟蹤檔案Git
- 尋找跟蹤檔案
- Oracle中如何跟蹤SQL或資料庫操作 [final]OracleSQL資料庫
- git列出跟蹤的檔案列表Git
- Oracle資料庫審計功能介紹Oracle資料庫