[ORACLE]統計更新を強制的にする

投稿日:

Oracleの統計情報の更新方法

頻度はそんなに無いというか、先日、トラブル対応時に必要に迫られたので・・・

通常は、Oracleの統計情報は1日1回更新されるらしいんだけど、夜とかになるみたい。

多分、設定すれば時間は変更出来るんだろうけど。

 
BEGIN
	--テーブル単位の収集
	DBMS_STATS.GATHER_TABLE_STATS (
		OWNNAME       => 'ユーザ名'
		,TABNAME      => 'テーブル名'
		,METHOD_OPT   => 'FOR ALL INDEXED'
		,CASCADE      => TRUE
	);
END;
 / 
BEGIN
	--スキーマ単位の収集
	DBMS_STATS.GATHER_SCHEMA_STATS (
		 OWNNAME => 'ユーザ名'
		,OPTIONS => 'GATHER'
	);
END;

 

まぁ、必要なタイミングはそこまで多くは無いと思うけど、今回、DBの入れ替えやら何やらをやった際に、統計情報の更新をする必要があったので。

統計情報が更新されないと、テーブルの検索時の速度とかに影響が出てくるらしいので、Oracleインストールじのデフォルトだと、自動になってるみたい。

SELECT NAME
     , VALUE
  FROM V$PARAMETER
 WHERE NAME = 'statistics_level'
;

自動になってるかどうかの確認は上記SQLで。

TYPCALかALLが返ってこれば、自動設定になってる。







-ORACLE

関連記事

[ORACLE]指定日付の月末を取得する

LAST_DAYで月末を取得する LAST_DAYを使います。 実際、仕様で、ある項目には月末を入力させるとか、翌月1日を指定するとかいうのが指定されたりします。 細かく計算してると正直面倒くさいです …

OracleでORA-01747 : 指定された列が無効ですのエラーの分かりづらさ・・・

OracleでORA-01747 : 指定された列が無効ですのエラーの分かりづらさったらありません・・・ SQLのUPDATE文の実行時に 「ORA-01747 : 指定された列が無効です」 とエラー …

[ORACLE]Oracleに接続できない時に確認すること

Oracleを新しくインストールした時に、中々接続できなかったので、その時に確認しておくべき事項のまとめ。 少なくとも、これは先にやっておいた方がいいこととか。 前提条件 前提と書くとものものしいけど …

no image

Oracleの再受験無料キャンペーンは5月31日まで

【ピアソンVUE専用】Oracle会場試験用受験チケット(電子チケット) 価格:26,720円 (2019/5/19 14:11時点) 感想(15件) 【ピアソンVUE専用】Oracleオンライン試験 …

C# OracleDbAccessを使用して、SQL実行時にORA-00911 文字が無効です のエラー

表題のとおり、C#でOracleDbAccessを使用して、SQLを実行させる時に発生しました。 ネットで探すと、 全角スペースが原因 とか出てきたので、SQL内のスペースを全て半角スペースに置き換え …


カテゴリー