[comment]: # translation:outdated

[comment]: # ({710cea74-710cea74})
# 12 Configuration de la base de données Oracle

[comment]: # ({/710cea74-710cea74})

[comment]: # ({c3411fd2-c3411fd2})
#### Aperçu

Cette section contient des instructions pour créer une base de données Oracle et configurer les connexions entre la base de données et le serveur Zabbix, le proxy et l'interface.

[comment]: # ({/c3411fd2-c3411fd2})

[comment]: # ({2fd36a67-2fd36a67})
### Création de la base de données

Nous supposons qu'un utilisateur de base de données *zabbix* avec le mot de passe *password* existe et dispose des autorisations nécessaires pour créer des objets de base de données dans le service ORCL situé
sur l'hôte du serveur de base de données Oracle. Zabbix nécessite un jeu de caractères de base de données Unicode et un jeu de caractères national `UTF8`. Vérifiez les réglages actuels :

    sqlplus> select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';

Préparez maintenant la base de données :

    shell> cd /path/to/zabbix-sources/database/oracle
    shell> sqlplus zabbix/password@oracle_host/ORCL
    sqlplus> @schema.sql
    # arrêtez-vous ici si vous créez une base de données pour le proxy Zabbix
    sqlplus> @images.sql
    sqlplus> @data.sql

::: notetip
Veuillez définir le paramètre d'initialisation CURSOR\_SHARING=FORCE pour de meilleures performances.
:::

[comment]: # ({/2fd36a67-2fd36a67})

[comment]: # ({db4ecc98-db4ecc98})
### Etablissement de la connexion

Zabbix prend en charge deux types d'identifiants de connexion (méthodes de connexion) :

- Easy Connect
- Net Service Name

Les paramètres de configuration de connexion pour le serveur Zabbix et le proxy Zabbix peuvent être définis dans les fichiers de configuration. Les paramètres importants pour le serveur et le proxy sont *DBHost*, *DBUser*, *DBName* et *DBPassword*. Les mêmes paramètres sont importants pour l'interface Web : *$DB\["SERVER"\]*, *$DB\["PORT"\]*, *$DB\["DATABASE"\]*, *$DB\["USER"\]*, *$DB\["PASSWORD"\]*.

Zabbix utilise la syntaxe de chaîne de connexion suivante :

    {DBUser/DBPassword[@<connect_identifier>]}

<connect\_identifier> peut être spécifié sous la forme "Net Nom du service" ou sous la forme "Easy Connect".

    @[[//]Host[:Port]/<service_name> | <net_service_name>]

[comment]: # ({/db4ecc98-db4ecc98})

[comment]: # ({ed80a373-ed80a373})

#### Easy Connect

Easy Connect utilise les paramètres suivants pour se connecter à la base de données :

-   *Host* - le nom d'hôte ou l'adresse IP du serveur de la base de données (paramètre DBHost dans le fichier de configuration).
-   *Port* - le port d'écoute sur le serveur de base de données (paramètre DBPort dans le fichier de configuration ; s'il n'est pas défini, le port 1521 sera utilisé par défaut).
-   <service\_name> - le nom de service de la base de données à laquelle vous souhaitez accéder (paramètre DBName dans le fichier de configuration).

**Exemple:**

Paramètres de base de données définis dans le fichier de configuration du serveur ou du proxy (zabbix\_server.conf et zabbix\_proxy.conf):

    DBHost=localhost
    DBPort=1521
    DBUser=myusername
    DBName=ORCL
    DBPassword=mypassword

Chaîne de connexion utilisée par Zabbix pour établir la connexion :

    DBUser/DBPassword@DBHost:DBPort/DBName

Lors de l'installation de l'interface Zabbix, définissez les paramètres correspondants à l'étape *Configurer la connexion à la base de données* de l'assistant d'installation :

-   Database host: localhost
-   Database port: 1521
-   Database name: ORCL
-   User: myusername
-   Password: mypassword

![](../../../../assets/en/manual/appendix/install/oracle_easy_connect.png){width="600"}

Alternativement, ces paramètres peuvent être définis dans le fichier de configuration frontal (zabbix.conf.php):

    $DB["TYPE"]                     = 'ORACLE';
    $DB["SERVER"]                   = 'localhost';
    $DB["PORT"]             = '1521';
    $DB["DATABASE"]                 = 'ORCL';
    $DB["USER"]                     = 'myusername';
    $DB["PASSWORD"]                 = 'mypassword';

[comment]: # ({/ed80a373-ed80a373})

[comment]: # ({fe8fa72a-fe8fa72a})

#### Nom du service réseau

Depuis Zabbix 5.4.0, il est possible de se connecter à Oracle en utilisant le nom du service réseau.

<net\_service\_name> est un nom simple pour un service qui se résout en un descripteur de connexion.

Afin d'utiliser le nom de service pour créer une connexion, ce nom de service doit être défini dans le fichier tnsnames.ora situé à la fois sur le serveur de base de données et sur les systèmes clients. Le moyen le plus simple de s'assurer que la connexion réussira est de définir l'emplacement du fichier tnsnames.ora dans la variable d'environnement TNS\_ADMIN. L'emplacement par défaut du fichier tnsnames.ora est :

    $ORACLE_HOME/network/admin/

Un exemple simple de fichier tnsnames.ora :

    ORCL =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = ORCL)
        )
      )

Pour définir les paramètres de configuration de la méthode de connexion "Nom du service réseau", utilisez l'une des options suivantes :

-    Définissez un paramètre DBHost vide et définissez DBName comme d'habitude :
```{=html}
<!-- -->
```
    DBHost=
    DBName=ORCL

-   Définissez les deux paramètres et laissez les vides :

```{=html}
<!-- -->
```
    DBHost=
    DBName=

Dans le second cas, la variable d'environnement TWO\_TAKS doit être définie. Il spécifie le service Oracle distant par défaut (nom du service). Lorsque cette variable est définie, le connecteur se connecte à la base de données spécifiée à l'aide d'un écouteur Oracle qui accepte les demandes de connexion. Cette variable est à utiliser sous Linux et UNIX uniquement. Utilisez la variable d'environnement LOCAL pour Microsoft Windows.

**Exemple :**

Connectez-vous à une base de données à l'aide du nom de service réseau défini sur ORCL et du port par défaut. Paramètres de base de données définis dans le fichier de configuration du serveur ou du proxy (zabbix\_server.conf et zabbix\_proxy.conf) :

    DBHost=
    #DBPort=
    DBUser=myusername
    DBName=ORCL
    DBPassword=mypassword

Lors de l'installation de l'interface Zabbix, définissez les paramètres correspondants à l'étape *Configurer la connexion à la base de données* de l'assistant d'installation :

-   Hôte de base de données :
-   Port de la base de données : 0
-   Nom de la base de données : ORCL
-   Utilisateur : myusername
-   Mot de passe : mypassword

![](../../../../assets/en/manual/appendix/install/oracle_service_name.png){width="600"}

Alternativement, ces paramètres peuvent être définis dans le fichier de configuration du frontend (zabbix.conf.php) :

    $DB["TYPE"]                     = 'ORACLE';
    $DB["SERVER"]                   = '';
    $DB["PORT"]                     = '0';
    $DB["DATABASE"]                 = 'ORCL';
    $DB["USER"]                     = 'myusername';
    $DB["PASSWORD"]                 = 'mypassword';

Chaîne de connexion utilisée par Zabbix pour établir la connexion :

    DBUser/DBPassword@ORCL

[comment]: # ({/fe8fa72a-fe8fa72a})

[comment]: # ({new-b56155a3})
#### Known issues

To improve performance, you can convert the field types from *nclob* to *nvarchar2*, see [known issues](/manual/installation/known_issues#slow-configuration-sync-with-oracle).

[comment]: # ({/new-b56155a3})
