日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

oracle 审计数据大,oracle审计AUD$过大导致的数据库登录异常

發布時間:2025/3/15 数据库 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 审计数据大,oracle审计AUD$过大导致的数据库登录异常 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天,省分技術人員反映數據庫登錄異常。

查詢oerr,發現該錯誤是一般性提示,可能導致的原因有數據庫未注冊、本地文件配置問題等。由于平時連接并沒有問題,是突發情況,所以排除了配置問題。

遠程登錄查詢監聽,發現監聽并無問題,但在嘗試本地登錄時出現ora 00020錯誤

oracle@dxxxx:~>?sqlplus?/?as?sysdba

SQL*Plus:?Release?11.2.0.4.0?Production?on?Mon?Apr?25?10:40:08?2016

Copyright?(c)?1982,?2013,?Oracle.??All?rights?reserved.

ERROR:

ORA-00020:?maximum?number?of?processes?(1200)?exceeded

Enter?user-name:

這說明進程數超過了數據庫設定值。嘗試在另一個節點登錄則并無問題。

那么應用應該不會出現問題才對,因為至少有一個節點是可用的。

為了查找問題根源,我從另一臺服務器上使用輕松連接的方式連接節點2的實例,結果報ora 01653

oracle@xxxx:/myimp/aud>?sqlplus?yy/yy@node2:1521/xxxx

SQL*Plus:?Release?11.2.0.4.0?Production?on?Mon?Apr?25?10:04:32?2016

Copyright?(c)?1982,?2013,?Oracle.??All?rights?reserved.

ERROR:

ORA-00604:?error?occurred?at?recursive?SQL?level?1

ORA-01653:?unable?to?extend?table?SYS.AUD$?by?8192?in?tablespace?SYSTEM

ORA-02002:?error?while?writing?to?audit?trail

ORA-00604:?error?occurred?at?recursive?SQL?level?1

ORA-01653:?unable?to?extend?table?SYS.AUD$?by?8192?in?tablespace?SYSTEM

Enter?user-name:

問題很明顯了,系統表空間應該是爆了。而aud$是審計相關。因此查詢系統表空間使用情況,并查找系統表空間內數據量最大的表。

SQL>?col?file_name?for?a50

SQL>?select?file_name,bytes/1024/1024/1024?GB?from?dba_data_files?where?tablespace_name='SYSTEM';

FILE_NAME??????????????????????????????????????????????????GB

--------------------------------------------------?----------

+DATADG/data/datafile/system.259.783425779?????????31.9726563

SQL>?select?*?from?(

2??select?table_name,blocks*8192/1024/1024/1024?GB?from?user_tables?where?blocks?is?not?null?order?by?2?desc)

3??where?rownum<10;

TABLE_NAME?????????????????????????????GB

------------------------------?----------

AUD$???????????????????????????27.4380493

IDL_UB1$???????????????????????.257354736

WRM$_SNAPSHOT_DETAILS??????????.232673645

WRI$_ADV_OBJECTS???????????????.193763733

HISTGRM$???????????????????????.130683899

WRH$_ACTIVE_SESSION_HISTORY?????.11491394

WRH$_FILESTATXS????????????????.112823486

OBJ$???????????????????????????.068336487

SOURCE$????????????????????????.066230774

9?rows?selected.

可以看出,系統表空間已達到上限32G,且其中審計表AUD$占了27G。

查看審計規則,可以看到數據庫審計了每次的連接。

現在清楚了。新有的連接因為審計策略需要寫入系統表空間的AUD$表,但由于系統表空間已達到空間配額,數據無法寫入,導致連接失敗。

數據庫急需可用,而該表因bug問題不能用數據泵導出,只能exp,耗時太長,因此直接truncate操作。

截斷aud$后,從節點1本地連接數據庫正常。但從B庫連接A庫節點1實例仍報ora 00020錯誤。查看節點1進程數

SQL>?select?count(*)?from?v$process;

COUNT(*)

----------

1198

查看參數為1200,節點2進程數為121.因此,懷疑省分配置的tnsnames.ora并未使用LB,導致所有連接只會去節點1.

目前節點1不能連接,是因為之前的連接都hung在這兒,導致連接擁堵。停掉節點一后,B庫遠程可以連到A庫。

SQL>?show?parameter?process

NAME?????????????????????????????????TYPE????????VALUE

------------------------------------?-----------?------------------------------

aq_tm_processes??????????????????????integer?????1

cell_offload_processing??????????????boolean?????TRUE

db_writer_processes??????????????????integer?????16

gcs_server_processes?????????????????integer?????6

global_txn_processes?????????????????integer?????1

job_queue_processes??????????????????integer?????1000

log_archive_max_processes????????????integer?????4

processes????????????????????????????integer?????1200

processor_group_name?????????????????string

SQL>?select?count(*)?from?v$process;

COUNT(*)

----------

121

重啟后,節點1進程數降下來,可以正常連接。

總結

以上是生活随笔為你收集整理的oracle 审计数据大,oracle审计AUD$过大导致的数据库登录异常的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。