自動メンテナンス・タスクを有効化・無効化する手順

oracle-y-lupa-100


自動メンテナンス・タスクの有効化と無効化

OracleはDBを最適な状態に維持するために、自動でメンテナンス・タスクを実行させています。詳細については以下のKROWNに書かれています。

KROWN#152363
 [11gR1 以降] 自動データベース・メンテナンス・タスクの有効化・無効化の方法及び確認方法について
 https://krown.oracle.co.jp/krown/oisc_showDoc.do?c_criterion=num&id=152363



 

自動メンテナンス・タスク確認

自動メンテナンス・タスクの状態はSQLで確認できます。SYSDBA権限でsqlplusを起動し、以下のSQLを実行します。

SQL> select client_name,status from dba_autotask_client;

CLIENT_NAME                      STATUS
-------------------------------- --------
auto optimizer stats collection  ENABLED
auto space advisor               ENABLED
sql tuning advisor               ENABLED

SQL>

 

有効化と無効化

自動メンテナンス・タスクを無効化する場合はこうです。

SQL> execute dbms_auto_task_admin.disable;

PL/SQL procedure successfully completed.

SQL>

 

有効化したい場合はこうです。

SQL> execute dbms_auto_task_admin.enable;

PL/SQL procedure successfully completed.

SQL>

 

部分的に有効化・無効化する場合

部分的に無効化や有効化をする場合は、以下のSQLを実行します。例えば、タスク「sql tuning advisor」を無効にしたい場合は、以下のようにします。

BEGIN
dbms_auto_task_admin.disable(
client_name => ‘sql tuning advisor’,
operation => NULL,
window_name => NULL);
END;
/

 

実行してみます。

SQL> BEGIN
  2  dbms_auto_task_admin.disable(
  3  client_name => 'sql tuning advisor',
  4  operation => NULL,
  5  window_name => NULL);
  6  END;
  7  /

PL/SQL procedure successfully completed.

SQL>

 

確認してみると、「」がDISABLEで無効化されたことがわかります。

SQL> select client_name,status from dba_autotask_client;

CLIENT_NAME                      STATUS
-------------------------------- --------
auto optimizer stats collection  ENABLED
auto space advisor               ENABLED
sql tuning advisor               DISABLE

SQL>

 

基本的には自動メンテナンス・タスクは自動が良いと思いますが、バッチ時間帯などに重複しないよう調整する必要はあります。

 

統計情報収集の自動化確認

 



 

 


サブコンテンツ

このページの先頭へ