Oracleのtips¶
ORA-01033発生時
- sysdbaでログインする
- ALTER DATABASE OPENコマンドを実行する
表領域の空き容量を確認する¶
DBA_TABLESPACE_USAGE_METRICSを使えばよい
(実行スクリプト)
select * from DBA_TABLESPACE_USAGE_METRICS
(参考サイト)
続・表領域の使用率を確認する!
テーブルの使用量を確認する¶
確認コマンド
SELECT a.table_name --テーブル名称 , a.num_rows --テーブルのレコード数 , b.MB -- テーブルの利用容量 FROM user_tables a -- 全てのテーブル , (SELECT Segment_Name, Sum(bytes)/1024/1024 MB FROM user_segments GROUP BY Segment_Name ) b --テーブル名称&容量の集合 WHERE a.table_name = b.Segment_Name ORDER BY a.num_rows desc, b.MB desc;
ポイント¶
user_segmentsの使い方がポイントとなるdescでuser_segmentsのカラムを確認すると”BYTES”カラムあることが分かる。
また、Segment_Nameはテーブル名なので、Segment_NameごとにBYTESを集計するSQLを書けばよい
(参考サイト)