Áú»¢¶Ä²©

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

Vista general

Aquesta secci¨® cont¨¦ les instruccions per crear una base de dades Oracle i configurar les connexions entre la base de dades i el servidor Áú»¢¶Ä²©, el proxy i l'interf¨ªcie.

Creaci¨® de la base de dades

Suposem que existeix un usuari zabbix de la base de dades, amb paraula de pas password; i que t¨¦ permisos necessaris per crear un objecte de base de dades al servei ORCL que ¨¦s a l'equip del servidor de base de dades Oracle. A Áú»¢¶Ä²© li cal un joc de car¨¤cters Unicode de base de dades, i un joc de car¨¤cters nacional UTF8. Verifiqueu la configuraci¨® actual:

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

Prepareu la base de dades:

cd /path/to/zabbix-sources/database/oracle
       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 Áú»¢¶Ä²©
       sqlplus> @images.sql
       sqlplus> @data.sql

Definiu el par¨¤metre d'inicialitzaci¨® CURSOR_SHARING=FORCE per tindre m¨¦s bon rendiment.

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

Áú»¢¶Ä²© suporta dos tipus d'identificadors de la connexi¨® (m¨¨todes de connexi¨®):

  • Easy Connect
  • Net Service Name

Els par¨¤metres de configuraci¨® de connexi¨® per al servidor Áú»¢¶Ä²© i el proxy Áú»¢¶Ä²© poden definir-se a l'arxiu de configuraci¨®. Els par¨¤metres importants per al servidor i el proxy s¨®n DBHost, DBUser, DBName i DBPassword. Els mateixos par¨¤metres s¨®n importants per a la interf¨ªcie Web : $DB["SERVER"], $DB["PORT"], $DB["DATABASE"], $DB["USER"], $DB["PASSWORD"].

Áú»¢¶Ä²© empra la sintaxi de cadena de connexi¨® seg¨¹ent:

{DBUser/DBPassword[@<connect_identifier>]}

<connect_identifier> es pot especificar amb la forma "Net Nom del servei" o sota la forma "Easy Connect".

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

Easy Connect

Easy Connect empra els par¨¤metres seg¨¹ents per connectar-se a la base de dades:

  • Host - nom d'equip o adre?a IP del servidor de base de dades (par¨¤metres DBHost a l'arxiu de configuraci¨®).
  • Port - el port d'escolta del servidor de base de dades (par¨¤metre DBPort a l'arxiu de configuraci¨®; si no ¨¦s pas definit, s'emprar¨¤ el port 1521 per defecte).
  • <service_name> - el nom de servei de la base de dades on voleu accedir (par¨¤metre DBName dins l'arxiu de configuraci¨®).

Exemple:

Par¨¤metres de la base de dades definits a l'arxiu de configuraci¨® del servidor o del proxy (zabbix_server.conf et zabbix_proxy.conf):

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

Cadena de connexi¨® emprada per Áú»¢¶Ä²© per establir la connexi¨®:

DBUser/DBPassword@DBHost:DBPort/DBName

Durant la instal¡¤laci¨® de la interf¨ªcie Áú»¢¶Ä²©, definiu els par¨¤metres corresponents a la fase Configurar la connexi¨® a la base de dades de l'assistent d'instal¡¤laci¨®:

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

Alternativament, aquests par¨¤metres es poden definir a l'arxiu de configuraci¨® frontal (zabbix.conf.php):

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

Nom del servei de xarxa

Des de Áú»¢¶Ä²© 5.4.0, ¨¦s possible connectar-se a Oracle emprant el nom del servei de xarxa.

<net_service_name> ¨¦s un nom simple per un servei que resol cap a un descriptor de connexi¨®.

Per emprar el nom del servei per crear una connexi¨®, el nom s'ha de definir a l'arxiu tnsnames.ora que hi ha al servidor de base de dades i als sistemes clients. La manera m¨¦s simple d'assegurar-vos que la connexi¨® funcionar¨¤ ¨¦s definir la ubicaci¨® de l'arxiu tnsnames.ora dins la variable d'entorn TNS_ADMIN. La ubicaci¨® per defecte de l'arxiu tnsnames.ora ¨¦s:

$ORACLE_HOME/network/admin/

Un exemple simple d'arxiu tnsnames.ora :

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

Per definir els par¨¤metres de configuraci¨® del m¨¨tode de connexi¨® "Nom del servei de xarxa", empreu una de les opcions seg¨¹ents:

  • Definiu un par¨¤metre DBHost buit i definiu DBName com de costum:
DBHost=
       DBName=ORCL
  • Definiu dos par¨¤metres i deixeu-los buits:
DBHost=
       DBName=

En el segon cas, la variable d'entorn TWO_TAKS s'ha de definir. Aquesta especifica el servei Oracle remot per defecte (nom del servei). Quan aquesta variable sigui definida, el connector es connectar¨¤ a la base de dades especificada emprarnt un escoltador Oracle que accepti les peticions de connexi¨®. Aquesa variable s'empra nom¨¦s amb Linux i Unix. Empreu la variable d'entorn LOCAL per a Microsoft Windows.

Exemple:

Connecteu-vos a una base de dades emprant el nom de servei de xarxa definit a ORCL i el port per defecte. Par¨¤metres de la base de dades definits a l'arxiu de configuraci¨® del servidor o del proxy (zabbix_server.conf et zabbix_proxy.conf) :

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

Durant la instal¡¤laci¨® de la interf¨ªcie Áú»¢¶Ä²©, definiu els par¨¤metres corresponents a la fase Configurar la connexi¨® a la base de dades de l'assistent d'instal¡¤laci¨®:

  • Equip de la base de dades:
  • Port de la base de dades: 0
  • Nom de la base de dades: ORCL
  • Usuari: myusername
  • Paraula de pas: mypassword

Alternativament, aquests par¨¤metres es poden definir a ll'arxiu de configuraci¨® del frontal (zabbix.conf.php):

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

Cadena de connexi¨® emprada per Áú»¢¶Ä²© per establir la connexi¨®:

DBUser/DBPassword@ORCL

Problemes coneguts

Per millorar el rendiment, podeu convertir els tipus d'arxius de nclob a nvarchar2, veieu els problemes coneguts.