7.12.1 必要な権限
Oracle Transactional Event Queues (TEQ)機能を利用するために必要な権限をデータベース・ユーザーに付与します。
- データベース・ユーザーは、既存のデータベース接続を介してメッセージをエンキューまたはデキューするために、
ENQUEUE_ANY
およびDEQUEUE_ANY
権限を持っている必要があります。 - データベース・ユーザーがOracle JMSインタフェースを使用するには、
DBMS_AQIN
およびDBMS_AQ
パッケージに対するEXECUTE
権限が必要です。
サンプル・コマンド
次のサンプル・コマンドは、必要な権限がOracle Databaseユーザーdepartment_teq
にどのように付与されるかを示しています。
-- Oracle transaction event Queue(TEQ) related grants
GRANT EXECUTE ON DBMS_AQ TO department_teq;
GRANT EXECUTE ON DBMS_AQIN to department_teq;
EXECUTE DBMS_AQADM.CREATE_SHARDED_QUEUE (queue_name => 'department_teq.<queue_name>', multiple_consumers => true);
EXECUTE dbms_aqadm.grant_queue_privilege('ALL', 'department_teq.<queue_name>', 'department_teq');
EXECUTE dbms_aqadm.start_queue(queue_name => 'department_teq.<queue_name>');