2017-03-01 13 views
0

特定のユーザーを監査しようとしており、ユーザーに割り当てられた監査ポリシーが作成されました。その後、監査データをアーカイブして抽出しました。監査テーブルへのDB2 AUDIT - LOAD

これまでのところとても良いです。

次に、db2audit.dllを使用して必要な表を作成しました。

TABNAME TABSCHEMA 
-------- --------- 
AUDIT AUDIT 
CHECKING AUDIT 
CONTEXT AUDIT 
EXECUTE AUDIT 
OBJMAINT AUDIT 
SECMAINT AUDIT 
SYSADMIN AUDIT 
VALIDATE AUDIT 

これで、データをテーブルにロードする際に問題が発生しました。

DB2

私はこれを実行する "DELPRIORITYCHAR LOBSINFILE INSERT INTO AUDIT.EXECUTE BY MODIFIED DELのexecute.delからLOAD":

この

は(ナレッジセンターから)私が使用している文です文は何も起こらない。

diaglogは私だけCRTL + Cまでステートメントを以下に示します。

2017-03-01-18.17.10.369493+060 I4839757A617   LEVEL: Warning 
PID  : 6619308    TID : 46267   PROC : db2sysc 0 
INSTANCE: db2xxx    NODE : 000   DB : XXX 
APPHDL : 0-61914    APPID: *LOCAL.db2xxx.170301163935 
AUTHID : DB2XXX    HOSTNAME: axxxxxxxx 
EDUID : 46267    EDUNAME: db2agent (XXX) 0 
FUNCTION: DB2 UDB, database utilities, sqluvtld_route_in, probe:924 
DATA #1 : LOADID, PD_TYPE_LOADID, 50 bytes 
LOADID: 46267.2017-03-01-18.17.10.369444.0 (-1;-1) 
DATA #2 : String, 55 bytes 
Starting LOAD operation (S) (1) (I) [AUDIT .EXECUTE]. 

私は本当に私がここに欠けているのか分かりません。何8K表領域が存在しない

私はSAP環境には、働いているので、私は自分自身を発見

+0

LOADは完了するまでエラーを報告せず、各エラーは減速します。エラーが多い場合は、表示されている動作が発生する可能性があります。あなたのLOADステートメントに 'warningcount 50 'を追加することをお勧めします(50の警告がある場合にLOADが失敗するように強制する)。 –

+0

警告はありませんでしたが、このヒントのおかげで解決策につながりました。 – nubbeldupp

答えて

0

おかげで、

ミルコ...。すべてのTablespacesとBufferpoolsは16Kです。

ddl-Fileを調べた後、私はこれをコメントセクションで見つけました。

-- -> assumes an 8K tablespace is available for use 

(私はきちんとナレッジセンターを読んでいない。必要な8K表領域を言及する短い文があります認めざるを得ない):)

8Kのバッファプールを作成した後、8Kの表領域およびドロップ/ LOADがうまく機能したテーブルを作成してください。

+0

これはあなたの質問にあなたが記述した内容と実際には関係しません。 AUDIT.EXECUTEが存在するかどうか。 'create table'が失敗したために存在しない場合は、LOADコマンドを発行するときにエラーが発生しました(' SQL3304N The table does exist .')。 –

+0

CREATE TABLEは失敗せず、スクリプト(sqllib/misc/db2audit.ddl)は8Kの表スペースがなくても正常に機能します。 – nubbeldupp