問合わせロギングを有効化、または無効化するには、特別なマクロDBQLAccessMacroに対するEXECUTE権限が必要です。DBQLAccessMacroは、DIPユーティリティのDIPVIEWSVで作成されます。
システム ユーザーDBCとSystemFEは、DBQLAccessMacroに対してEXECUTE権限を持ち、この権限を必要に応じて他のユーザーに付与できます。管理ユーザーなどの他のユーザーがDBQLAccessMacroを実行できるようにするには次の手順を実行します。
- ユーザーDBC (またはSystemFE)としてログオンします。
- 以下のように、データベースDBCの内容をリストして、DBQLAccessMacro、DBQLRuleTbl、およびDBQLRuleCountTblが作成済みであることを確認します。
HELP DATABASE DBC ;
DBQLテーブル、ビュー、およびマクロを報告する必要があります。
- 次の権限をデータベース管理者ユーザーに付与します。
GRANT EXECUTE ON DBC.DBQLAccessMacro TO DBADMIN ; GRANT SELECT ON DBC.DBQLRULESV TO DBADMIN ;
- DBCまたはSystemFEセッションをログオフします。
- ユーザーDBADMINとしてログオンします。
- BEGIN QUERY LOGGING文またはREPLACE QUERY LOGGING文を使用して、1つまたは複数のユーザー、アカウント、またはアプリケーションに関するクエリー ロギング ルールを定義します(全構文については、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください)。
- 以下のようにして、DBQLRules[V]ビューでルールが正しいことを確認します。
SELECT * FROM DBC.DBQLRulesV ;
エラーが表示された場合、そのユーザーでREPLACE QUERY LOGGING文を実行します。