このタスクについて
XStream管理者を設定するには、ユーザーの作成、権限の付与、およびテーブルスペースの作成を行う権限を持つ管理ユーザーとしてOracleデータベースに接続し、次の手順に従います。
手順
-
次のステートメントを実行してXStream管理者のテーブルスペースを作成します。既存のテーブルスペースを使用する場合はこの手順をスキップします。
CREATE TABLESPACE xstream_tbs DATAFILE '$ORACLE_HOME/dbs/xstream_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
-
次のステートメントを実行して、XStream管理者となる新しいユーザーを作成します。既存のユーザーを指定する場合は、このステップをスキップします。
CREATE USER username IDENTIFIED BY password DEFAULT TABLESPACE xstream_tbs QUOTA UNLIMITED ON xstream_tbs;
注:-
CDBでXStream管理者を作成する場合、XStream管理者は一般ユーザーにする必要があります。一般ユーザーの名前はc##またはC##で始まり、ステートメントにはCONTAINER=ALL句を含める必要があります。
-
Oracleのデフォルトのテーブルスペースを使用してXStream管理者を作成する場合、ステートメントのDEFAULT TABLESPACEおよびQUOTA UNLIMITED ON句は削除する必要があります。
-
-
次のステートメントおよびプロシージャーを実行してXStream管理者に権限を付与します。
GRANT DBA TO username; GRANT CONNECT, CREATE TABLE TO username; GRANT RESOURCE TO username; GRANT CREATE TABLESPACE TO username; GRANT UNLIMITED TABLESPACE TO username; GRANT SELECT_CATALOG_ROLE TO username; GRANT EXECUTE_CATALOG_ROLE TO username; GRANT CREATE SEQUENCE TO username; GRANT CREATE SESSION TO username; GRANT CREATE ANY VIEW TO username; GRANT CREATE ANY TABLE TO username; GRANT SELECT ANY TABLE TO username; GRANT COMMENT ANY TABLE TO username; GRANT LOCK ANY TABLE TO username; GRANT SELECT ANY DICTIONARY TO username; GRANT EXECUTE ON SYS.DBMS_CDC_PUBLISH to username; GRANT CREATE ANY TRIGGER TO username; GRANT ALTER ANY TRIGGER TO username; GRANT DROP ANY TRIGGER TO username;
BEGIN DBMS_XSTREAM_AUTH.GRANT_ADMIN_PRIVILEGE( grantee => 'username', privilege_type => 'CAPTURE', grant_select_privileges => TRUE); END; /
BEGIN DBMS_XSTREAM_AUTH.GRANT_ADMIN_PRIVILEGE( grantee => 'username', privilege_type => 'APPLY', grant_select_privileges => TRUE); END; /
タスクの結果
一般ユーザーに権限を付与する場合は、上記のGRANTステートメントおよびプロシージャーにCONTAINER=ALL句を含める必要があります。