Áú»¢¶Ä²©

14 °ä´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô de la base de datos Oracle

Descripci¨®n general

Esta secci¨®n contiene instrucciones para crear una base de datos Oracle y configurar conexiones entre la base de datos y el servidor Áú»¢¶Ä²©, proxy, e interfaz.

El soporte para Oracle DB se considera obsoleto desde Áú»¢¶Ä²© 7.0.

Creaci¨®n de base de datos

Suponemos que existe un usuario de base de datos zabbix con la contrase?a password y tiene permisos para crear objetos de base de datos en el servicio ORCL ubicado en el servidor de base de datos Oracle host. Áú»¢¶Ä²© requiere una base de datos con el juego de caracteres Unicode y un juego de caracteres nacional UTF8. Verifique los ajustes actuales:

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

Ahora prepare la base de datos:

cd /path/to/zabbix-sources/database/oracle
       sqlplus zabbix/password@oracle_host/ORCL
       sqlplus> @schema.sql
       # det¨¦ngase aqu¨ª si est¨¢ creando una base de datos para el proxy Áú»¢¶Ä²©
       sqlplus> @images.sql
       sqlplus> @data.sql

Por favor configure el par¨¢metro de inicializaci¨®n CURSOR_SHARING=FORCE para obtener un mejor rendimiento.

°ä´Ç²Ô´Ú¾±²µ³Ü°ù²¹³¦¾±¨®²Ô de la conexi¨®n

Áú»¢¶Ä²© admite dos tipos de identificadores de conexi¨®n (m¨¦todos de conexi¨®n):

  • Conexi¨®n f¨¢cil
  • Nombre del servicio de red

Los par¨¢metros de configuraci¨®n de conexi¨®n para el servidor Áú»¢¶Ä²© y el proxy Áú»¢¶Ä²© se pueden configurar en los archivos de configuraci¨®n. Los par¨¢metros importantes para el servidor y el proxy son DBHost, DBUser, DBName y DBPassword. Los mismos par¨¢metros son importantes para la interfaz: $DB["SERVER"], $DB["PORT"], $DB["DATABASE"], $DB["USER"], $DB["PASSWORD"].

Áú»¢¶Ä²© utiliza la siguiente sintaxis de cadena de conexi¨®n:

{DBUser/DBPassword[@<connect_identifier>]} 

<connect_identifier> se puede especificar en forma de "NetService Name" o "Easy Connect"

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

Easy Connect utiliza los siguientes par¨¢metros para conectarse a la base de datos:

  • Equipo - el nombre del equipo o direcci¨®n IP de la computadora servidor de la base de datos (Par¨¢metro DBHost en el archivo de configuraci¨®n).
  • Puerto - el puerto de escucha en el servidor de la base de datos (par¨¢metro DBPort en el archivo de configuraci¨®n; Si no se configura, el puerto predeterminado 1521 ser¨¢ usado).
  • <servicio_nombre>: el nombre del servicio de la base de datos que desea acceso (par¨¢metro DBName en el archivo de configuraci¨®n).

Ejemplo

Par¨¢metros de la base de datos establecidos en el archivo de configuraci¨®n del servidor o proxy (zabbix_server.conf y zabbix_proxy.conf):

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

Cadena de conexi¨®n utilizada por Áú»¢¶Ä²© para establecer la conexi¨®n:

DBUser/DBPassword@DBHost:DBPort/DBName

Durante la instalaci¨®n de la interfaz de Áú»¢¶Ä²©, configure los par¨¢metros correspondientes en el paso Configurar conexi¨®n de base de datos del asistente de configuraci¨®n:

  • Equipo de base de datos: localhost
  • Puerto de base de datos: 1521
  • Nombre de la base de datos: ORCL
  • Usuario: myusername
  • Contrase?a: mypassword

Alternativamente, estos par¨¢metros se pueden establecer en la configuraci¨®n del frontend. archivo (zabbix.conf.php):

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

Es posible conectarse a Oracle mediante el nombre del servicio de red.

<net_service_name> es un nombre simple para un servicio que resuelve a un descriptor de conexi¨®n.

Para utilizar el nombre del servicio para crear una conexi¨®n, el nombre de este servicio debe definirse en el archivo tnsnames.ora ubicado tanto en el servidor de base de datos y los sistemas cliente. La manera m¨¢s f¨¢cil de asegurarse que la conexi¨®n tendr¨¢ ¨¦xito es definir la ubicaci¨®n de tnsnames.ora en la variable de entorno TNS_ADMIN. El valor por defecto de la ubicaci¨®n del archivo tnsnames.ora es:

$ORACLE_HOME/network/admin/

Un ejemplo sencillo del archivo tnsnames.ora:

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

Para establecer los par¨¢metros de configuraci¨®n para el m¨¦todo de conexi¨®n "Nombre del servicio de red" , utilice una de las siguientes opciones:

  • Establezca un par¨¢metro DBHost vac¨ªo y configure DBName como de costumbre:
DBHost=
       DBName=ORCL
  • Establezca ambos par¨¢metros y deje ambos vac¨ªos:
DBHost=
       DBName=

En el segundo caso, se debe configurar la variable de entorno TWO_TASK. Esta, especifica el servicio remoto predeterminado de Oracle (nombre del servicio). Cuando esta variable est¨¢ definida, el conector se conecta a la base de datos especificada utilizando un oyente de Oracle que acepta solicitudes de conexi¨®n. Esta variable es para uso ¨²nicamente en Linux y UNIX. Utilice la variable de entorno LOCAL para Microsoft Windows.

Ejemplo:

Con¨¦ctese a una base de datos usando el nombre del servicio de red configurado como ORCL y el valor de puerto predeterminado. Los par¨¢metros de la base de datos establecidos en el archivo de configuraci¨®n del servidor o proxy (zabbix_server.conf y zabbix_proxy.conf):

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

Durante la instalaci¨®n de la interfaz de Áú»¢¶Ä²©, configure los par¨¢metros correspondientes en el paso Configurar conexi¨®n de base de datos del asistente de configuraci¨®n:

  • Equipo de base de datos:
  • Puerto de base de datos: 0
  • Nombre de la base de datos: ORCL
  • Usuario: myusername
  • Contrase?a: mypassword

Alternativamente, estos par¨¢metros se pueden establecer en el archivo de configuraci¨®n del frontend (zabbix.conf.php):

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

Cadena de conexi¨®n utilizada por Áú»¢¶Ä²© para establecer la conexi¨®n:

DBUser/DBPassword@ORCL

Problemas conocidos

Para mejorar el rendimiento, puede convertir los tipos de campo de nclob a nvarchar2, consulte los problemas conocidos.