dbms_sql.delete_traceストアドプロシージャを使用して、特定のSQL文に基づいてSQLトレース機能で追跡する必要のないテンプレート化SQL文を削除できます。 dbms_sql.delete_trace_by_sqlid
ストアドプロシージャを使用して、SQL IDに基づくSQLトレース機能で追跡する必要のないテンプレート化SQL文を削除することもできます。
構文
dbms_sql.delete_trace_by_sqlid('<schema>', '<sql_id>')
Parameters
パラメーター | 説明 |
schema | スキーマの名前。 |
sql_id | SQL文のID。 |
注意事項
ストアドプロシージャがプライマリノードで実行されると、ストアドプロシージャの実行はプライマリノードに永続的に保存され、mysql.sql_sharingテーブルの関連する実行レコードは削除され、読み取り専用ノードに同期されます。
ストアドプロシージャが読み取り専用ノードで実行される場合、ストアドプロシージャの実行はノードに永続的に格納されません。 ストアドプロシージャはノードでのみ実行できます。 クラスターエンドポイントを使用してデータベースにアクセスすると、テンプレート化されたSQL文は自動的にプライマリノードにルーティングされます。
例
次のステートメントを実行して、SQL IDに基づいてSQLトレース機能で追跡する必要のないSQLステートメントを削除できます。
call dbms_sql.delete_trace_by_sqlid('test '、'82t4dswtqjg02');
dbms_sql.delete_trace_by_sqlid('test', polar_sql_id('select * from t where c1 > 1 and c1 < 10 ')) を呼び出します。dbms_sql.delete_trace_by_sqlid('test', 'select * from t where c1 > 1 and c1 < 10 ');
上記のステートメントが期待どおりに実行されると、必要なSQLステートメントが削除されます。