RM-BLOG

IT系技術職のおっさんがIT技術とかライブとか日常とか雑多に語るブログです。* 本ブログに書かれている内容は個人の意見・感想であり、特定の組織に属するものではありません。/All opinions are my own.*

OracleDatabase関連

【ORACLE】テーブル容量の確認

テーブルの容量はDBA_SEGMENTS.BYTESに格納されているので、 SEGMENT_NAMEにテーブル名を与えればゲットすることが出来る SELECT SEGMENT_NAME,BYTES FROM DBA_SEGMENTS WHERE SEGMENT_NAME = :TAB_NAME BYTESは単位が本当に「バイト」なので、 キロバイトに…

【ORACLE】セッションの強制KILL

セッションを切断するには下記のSQLを発行する。 sysdbaじゃなくてもOK。 ALTER SYSTEM KILL SESSION '[SID],[SERIAL#]'; たとえばSID=100、SERIAL#が12345なら ALTER SYSTEM KILL SESSION '100,12345'; とする。 たいていこれで殺せるのだが、 長く続いた…

ORACLEの面倒な仕様(分散トランザクション)

1つのトランザクション内で DBリンク経由等から異なるインスタンスのデータを"参照"(SELECT)した場合、 そのトランザクションは「分散トランザクション」になる。 通常のJDBCからの接続(OracleDataSourceとか)でもそうなる。 ただOracleXADataSourceか…

【ORACLE】長時間流れているSQLの処理状況を調査

※経験則に基づくものであり、ORACLEの仕様を把握して書いてるわけではないです 投げたSQL(SELECT文とか)が全然かえってこないという場合 下記2つの見方でそのSQLの進行状況がある程度把握できる (1)V$SESSION.SEQ#が変化するか UPDATEやDELETEなどを実…

【コマンドラインメモ】ORACLE

sqlplus [ユーザー]/[パスワード]@[SID] sqlplusに接続する