17.10 - BEGIN/REPLACE/END QUERY LOGGING文 - Advanced SQL Engine - Teradata Database

Teradata Vantage™- データベースの管理

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
管理
Publication ID
B035-1093-171K-JPN
Language
日本語 (日本)

DBQLロギングの有効化および無効化に使用される、Teradata SQLのDCL文のそれぞれの目的を次のテーブルに説明します。

目的
BEGIN QUERY LOGGING DBQLAccessMacroに対するEXECUTE権限を持つユーザーによって実行依頼されると、この文は名前を指定されたユーザー/アカウント/アプリケーションのペアに関するロギングを可能にします。
ログ可能な最大数は次のとおりです。
  • 100ユーザー
  • 1ユーザーに100アカウント
  • 100アプリケーション

上記の数字は、1文あたりです。100を超えるユーザーにロギングを使用可にする場合、100名のユーザーそれぞれにBEGIN QUERY LOGGING文のブロックを使用します。アクティブなセッションの場合、ロギングは、Vantageが次の問合わせを受け取ったときに始まります。

また、あるユーザー、アカウント、アプリケーション名についてロギングが実行されないようにするルールを有効にすることもできます。

詳細については、ロギング シナリオを参照してください。

REPLACE QUERY LOGGING DBQLAccessMacroでEXECUTE権限を所有するユーザーによって実行されると、この文はロギングを有効にして、1つがユーザー、アカウント、アプリケーションの組に一致する場合はDBC.DBQLRuleTblテーブルにある既存のルールを削除して、新しいルールを作成します。ルールが存在しない場合、新しいルールがDBC.DBQLRuleTblテーブルに追加されます。
END QUERY LOGGING DBQLAccessMacroに対するEXECUTE権限を持つユーザーによって実行依頼されると、この文は名前を指定されたユーザー、アカウント、アプリケーションに関するロギングを停止します。各END QUERY LOGGING文は、1ユーザー/100アプリケーションの場合、100ユーザー/100アカウント未満をリストします。DBQLは、データをコミットし、すべてのDBQLキャッシュをフラッシュするルーチンを呼び出します。

END QUERY LOGGING文を発行するたびに、システムはルール キャッシュをすべてフラッシュし、さらにDBQLデータ テーブルをフラッシュします。

その他の方法を使用して、DBQLキャッシュをフラッシュすることもできます。DBQLキャッシュのフラッシュに関するオプションを参照してください。

END QUERY LOGGINGの詳細については、ロギングの動的な使用可/置換/使用不可の現在のルールに及ぼす影響を参照してください。

使用可にしたすべてのBEGIN QUERY LOGGING文は、適切なEND QUERY LOGGING文の構文を使用して使用不可にする必要があります。例えば次を発行したとします。

BEGIN QUERY LOGGING WITH SQL ON user1 ACCOUNT='Marketing';

以下の構文を使用して、そのユーザーのロギングを停止する必要があります。

END QUERY LOGGING ON user1 ACCOUNT='Marketing';

複数のアカウントをリストする場合は括弧を使用します。例えば、ACCOUNT= ('Marketing', 'Finance')となります。

文の構造については、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。他のユーザーがこれらの文を実行依頼できるようにする方法については、DBQL管理者権限の他のユーザーへの付与を参照してください。