Configurez un administrateur XStream - 7.0

Guide utilisateur de Talend Data Management Platform Studio

author
Talend Documentation Team
EnrichVersion
7.0
EnrichProdName
Talend Data Management Platform
task
Création et développement
EnrichPlatform
Studio Talend

Pourquoi et quand exécuter cette tâche

Afin de configurer un administrateur XStream, connectez-vous à la base de données Oracle en tant qu'administrateur ayant les droits pour créer des utilisateurs, accorder des privilèges et créer des tablespaces.

Procédure

  1. Créez un tablespace pour l'administrateur XStream en exécutant la requête suivante. Passez cette étape si vous souhaitez utiliser un tablespace existant.
    CREATE TABLESPACE xstream_tbs DATAFILE '$ORACLE_HOME/dbs/xstream_tbs.dbf' SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
  2. Créez un nouvel utilisateur pour l'administrateur XStream en exécutant les requêtes suivantes. Passez cette étape si vous souhaitez identifier un utilisateur existant.
    CREATE USER username IDENTIFIED BY password
    DEFAULT TABLESPACE xstream_tbs
    QUOTA UNLIMITED ON xstream_tbs;
    Remarque :
    • Si vous créez un administrateur XStream dans une CDB, l'administrateur XStream doit être un utilisateur commun. Le nom d'un utilisateur commun doit commencer par c## ou C## et vous devez inclure la clause CONTAINER=ALL dans la requête.

    • Si vous créez un administrateur XStream à l'aide du tablespace par défaut d'Oracle, vous devez supprimer les clauses DEFAULT TABLESPACE et QUOTA UNLIMITED ON de la requête.

  3. Accordez des privilèges à l'administrateur XStream en exécutant les requêtes et procédures suivantes :
    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;
    /

Résultats

Notez que si vous accordez des privilèges à un utilisateur commun, vous devez inclure la clause CONTAINER=ALL dans les requêtes et procédures GRANT précédentes.