DB結果をCSVへ
SET ECHO OFF SET PAGESIZE 0 SET FEEDBACK OFF SET LINESIZE 5000 SET TRIMSPOOL ON
SPOOL TE_SEARCH.csv
SELECT ‘項目名1’||’,'||’項目名2’||’,'||’項目名3’, FROM DUAL; SELECT FILED1||’,'||FILED2||’,'||FIELD3 FROM TABLE1;
SPOOL OFF
sqlplus設定一覧
http://www.shift-the-oracle.com/sqlplus/system-variable/
日付
TO_DATE('2013-01-11 15:40:33', YYYY-MM-DD HH24:MI:SS')
DBロック一覧
SELECT
A.SID SID,
A.USERNAME USERNAME,
A.SERIAL# SERIALNO,
B.TYPE TYPE,
B.ID1,
B.ID2,
D.OBJECT_NAME,
DECODE(B.LMODE,
0,'0:NONE',
1, '1:NULL',
2, '2:行共有(SS)',
3, '3:行排他(SX)',
4, '4:共有(S)',
5, '5:共有行排他(SRX)',
6, '6:排他(X)',
B.LMODE) LMODE,
DECODE(B.REQUEST,
0, '0:NONE',
1, '1:NULL',
2, '2:行共有(SS)',
3, '3:行排他(SX)',
4, '4:共有(S)',
5, '5:共有行排他(SRX)',
6, '6:排他(X)',
B.REQUEST) REQUEST,
B.BLOCK,
A.PROGRAM PROGRAM,
TO_CHAR(B.CTIME/60,'999990.9') LOCK_TIME,
C.SQL_TEXT SQL
FROM
V$SESSION A,
V$LOCK B,
V$SQLAREA C,
DBA_OBJECTS D
WHERE A.SID = B.SID
AND A.SQL_ADDRESS = C. ADDRESS (+)
AND B.ID1 = D.OBJECT_ID (+)
AND A.USERNAME IS NOT NULL
ORDER BY A.SID,B.TYPE,B.ID1,B.ID2
「BLOCK」が1のものがあれば、ロック待ちが発生している。
そのときのLOCK_TIMEがロック確保時間(分)
#注:ロック確保側のSQLはわからない。
上記のID1と同じでBLOCKが0のものがロック待ち。
このLOCK_TIMEでロック待ち時間がわかる。