# Prérequis à l'utilisation du mode Redo/Archive log d'Oracle

## Avant de commencer

La fonctionnalité CDC utilise Java. Assurez-vous que Java est activé lorsque vous installez la base de données Oracle.

La fonction CDC dans ce mode pour Oracle est disponible pour la version 11 uniquement. Elle n'est pas disponible avec les versions 12 ou supérieures d'Oracle.

Avant d'utiliser la fonction CDC en mode Redo/Archive log dans le Studio Talend, l'administrateur de la base de données à surveiller doit :

## Procédure

1. Activer le mode Active log de la base de données.
2. Mettre en place le CDC dans la base Oracle.
3. Créer et donner tous les droits à l'utilisateur ou l'utilisatrice source.
4. Créer et donner tous les droits et privilèges à l'éditeur.

## Activer le mode archive log d'Oracle

### Procédure

1. Connectez-vous à la base de données Oracle en tant qu'administrateur·trice.
2. Saisissez les requêtes suivantes :
   ```
   connect / as sysdba;
   shutdown;
   startup exclusive mount;
   alter database archivelog;
   alter database open;
   ```

## Mettre en place le CDC de la base Oracle

### Procédure

1. Créez un tablespace pour l'utilisateur·trice source et pour la personne en charge de la publication, respectivement.

   Dans l'exemple ci-dessous, le chemin $ORACLE\_PATH varie selon l'emplacement d'installation d'Oracle :
   ```
   create tablespace SOURCE datafile '$ORACLE_PATH/oradata/Oracle/SOURCE.dbf' size 50M;
   ```
2. Créez un·e utilisateur·trice source et donnez-lui tous les droits nécessaires pour effectuer des modifications.

   Dans l'exemple ci-dessous, l'utilisateur·trice source est appelé·e source :
   ```
   create user source
   identified by source
   default tablespace SOURCE 
   quota unlimited on SOURCE;
   ```
   ```
   grant connect, create table to source;
   grant unlimited tablespace to source;grant select_catalog_role to source;
   grant execute_catalog_role to source;
   grant create sequence to source;
   grant create session to source;
   grant dba to source;
   grant execute on SYS.DBMS_CDC_PUBLISH to source;
   ```
   ```
   create tablespace PUBLISHER datafile '$ORACLE_PATH/oradata/Oracle/PUBLISHER.dbf' size 50M;
   ```
3. Créez un·e utilisateur·trice de publication et donnez-lui tous les droits nécessaires pour capturer et publier des modifications.

   Dans l'exemple ci-dessous, la personne en charge de la publication est nommée publisher :
   ```
   create user publisher
   identified by publisher
   default tablespace PUBLISHER
   quota unlimited on PUBLISHER;
   ```
   ```
   grant connect, create table to publisher;
   grant unlimited tablespace to publisher;
   grant select_catalog_role to publisher;
   grant execute_catalog_role to publisher;
   grant create sequence to publisher;
   grant create session to publisher;
   grant dba to publisher;
   grant execute on SYS.DBMS_CDC_PUBLISH to publisher;
   execute DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE(GRANTEE=>'publisher');
   ```

   Note InformationsRemarque : Vous trouverez ci-dessous davantage d'informations concernant les différentes procédures utilisées ci-dessus :
   * La procédure select\_catalog\_role permet à l'éditeur de consulter tout le dictionnaire Oracle.
   * La procédure execute\_catalog\_role permet à l'éditeur d'exécuter les procédures du dictionnaire.
   * La procédure SYS.DBMS\_CDC\_PUBLISH permet à l'éditeur de configurer le système CDC capturant et publiant les données modifiées dans une ou plusieurs tables relationnelles source.
   * La procédure DBMS\_STREAMS\_AUTH.GRANT\_ADMIN\_PRIVILEGE(GRANTEE=&gt;'publisher') accorde les privilèges d'administration nécessaires à l'utilisateur ou l'utilisatrice pour faire des opérations de réplication de données (stream). La procédure GRANT\_ADMIN\_PRIVILEGE permet à l'utilisateur ou l'utilisatrice d'effectuer toutes les opérations de configuration de l'environnement stream : notamment la capture, la propagation, l'application, la mise en file d'attente, etc.