Gblog

おもにTips

V$SESSION_WAIT と V$SESSION_WAIT_CLASS

超似てるので注意。

  • V$SESSION
    カレント・セッションごとのセッション情報
  • V$SESSION_WAIT
    各セッションについて現行または前回の待機
  • V$SESSION_WAIT_CLASS
    各セッションについて様々な待機イベント操作に要した時間

ここら辺も似てる。

  • V$SESSION_EVENT
    セッション別のイベントの待機情報
  • V$SERVICE_EVENT
    各サービスごとの待機回数と待機時間の集計

 

V$SESSION_WAIT_CLASS と V$SERVICE_EVENT と V$SESSION_EVENT は、TOTAL_WAITS 列と TIME_WAITED列がある。つまり、セッションやサービスにおける待機の合計を確認できると考えられる。

V$SESSION と V$SESSION_WAIT には、合計待機回数などを示す列はなく、カレント(あるいは前回)の待機情報を表示してくれると考えられる。

 

INTERVAL DAY TO SECOND 型と INTERVAL YEAR TO MONTH 型

しらなかった。

 

INTERVAL DAY TO SECOND はこんな感じ。

SQL> desc test1
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER
 DAY1                                               DATE
 INT                                                INTERVAL DAY(2) TO SECOND(6)

SQL> select day1, int, day1 - int from test1;

DAY1                INT                            DAY1-INT
------------------- ------------------------------ -------------------
2021-04-06 19:10:44 +01 00:00:00.000000            2021-04-05 19:10:44
2021-04-06 19:10:44 +01 01:02:03.000000            2021-04-05 18:08:41

 

続きを読む

UNUSABLE な索引は、セグメントが開放されている。

しらなかった。。。

SQL> create table tab1 as select * from v$parameter;

Table created.

SQL> create index tab1i1 on tab1 (num);

Index created.

SQL> col OWNER for a10
SQL> col SEGMENT_NAME for a10
SQL> select OWNER,SEGMENT_NAME,EXTENTS from dba_segments  where owner='G';

OWNER      SEGMENT_NA    EXTENTS
---------- ---------- ----------
G          TAB1                2
G          TAB1I1              1

SQL> alter index tab1i1 unusable;

Index altered.

SQL> select OWNER,SEGMENT_NAME,EXTENTS from dba_segments  where owner='G';

OWNER      SEGMENT_NA    EXTENTS
---------- ---------- ----------
G          TAB1                2

SQL>

 

索引(TAB1I1)のセグメントが、DBA_SEGMENTS が消えてる。