自動メンテナンス・タスクを有効化・無効化する手順
自動メンテナンス・タスクの有効化と無効化
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>
基本的には自動メンテナンス・タスクは自動が良いと思いますが、バッチ時間帯などに重複しないよう調整する必要はあります。