14 Подешавање Oracle базе података

Преглед

Овај одељак садржи упутства за креирање Oracle базе података и конфигурисање веза између базе података и Zabbix сервера, проксија, и корисничког интерфејса.

Подршка за Oracle DB је застарела од Zabbix-а 7.0.

Креирање базе података

Претпостављамо да zabbix корисник базе података са лозинком лозинком постоји и има дозволе за креирање објеката базе података у ORCL сервису који се налази на домаћину Oracle сервера базе података. Zabbix захтева Unicode базу података скупа карактера и UTF8 национални скуп карактера. Проверите трнутна подешавања:

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

Сада припремите базу података:

cd /path/to/zabbix-sources/database/oracle
       sqlplus zabbix/password@oracle_host/ORCL
       sqlplus> @schema.sql
       # stop here if you are creating database for Zabbix proxy
       sqlplus> @images.sql
       sqlplus> @data.sql

Подесите параметар иницијализације CURSOR_SHARING=FORCE for best performance.

Подешавање везе

Zabbix подржава два типа идентификатора повезивања (методе повезивања):

  • Једноставно повезивање
  • Назив мрежне услуге

Параметри конфигурације везе за Zabbix сервер и Zabbix прокси може се подесити у конфигурационим датотекама. Важни параметри за сервер и прокси су DBHost, DBUser, DBName и DBPassword. Ти исти параметри су важни и за кориснички интерфејс: $DB["SERVER"], $DB["PORT"], $DB["DATABASE"], $DB["USER"], $DB["PASSWORD"].

Zabbix користи следећу синтаксу стринга конекције:

{DBUser/DBPassword[@<connect_identifier>]}

<connect_identifier> се може навести или у облику "Назива мрежне услуге" или "Једноставног повезивање".

@[[//]Host[:Port]/<service_name> | <net_service_name>]
Једноставно повезивање

Једноставно повезивање користи следеће параметре за повезивање са базом података:

  • Домаћин - име домаћина или IP адреса рачунара сервера базе података (DBHost параметар у конфигурационој датотеци).
  • Порт - порт за слушање на серверу базе података (DBPort параметар у конфигурационој датотеци; ако није подешен подразумевани порт 1521 ће бити коришћен).
  • <service_name> - име сервиса базе података којој желите да приступите (параметар DBName у конфигурационој датотеци).

Пример

Параметри базе података постављени у конфигурационој датотеци сервера или проксија (zabbix_server.conf and zabbix_proxy.conf):

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

Стринг конекције који Zabbix користи за успостављање конекције:

DBUser/DBPassword@DBHost:DBPort/DBName

Током инсталације Zabbix корисничког интерфејса, поставите одговарајуће параметре у кораку Конфигуришите DB конекцију чаробњака за подешавање:

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

Алтернативно, ови параметри се могу подесити у конфигурацији датотеке корисничког интерфејса (zabbix.conf.php):

$DB["TYPE"]= 'ORACLE';
       $DB["SERVER"]= 'localhost';
       $DB["PORT"]= '1521';
       $DB["DATABASE"]= 'ORCL';
       $DB["USER"]= 'myusername';
       $DB["PASSWORD"]= 'mypassword';
Назив мрежне услуге

Могуће је повезати се на Oracle користећи назив мрежне услуге.

<net_service_name> је једноставно име за услугу која се решава преко дескриптора повезивања.

Да бисте користили име сервиса за креирање везе, ово име сервиса мора бити дефинисано у датотеци tnsnames.ora која се налази и на серверу базе података и клијентском систему. Најлакши начин да се уверите да ће веза успети јесте да дефинишете локацију tnsnames.ora датотеке у TNS_ADMIN променљивој окружења. Подразумевана локација датотеке tnsnames.or је:

$ORACLE_HOME/network/admin/

Једноставан пример датотеке tnsnames.ora:

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

Да бисте подесили конфигурационе параметре за метод везе "Назив мрежне услуге", користите једну од следећих опција:

  • Поставите празан параметар DBHost и поставите DBName као и обично:
DBHost=
       DBName=ORCL
  • Подесите оба параметра и оставите оба празна:
DBHost=
       DBName=

У другом случају, променљива окружења TWO_TASK мора бити подешена. То специфицира подразумевану удаљену Oracle услугу (име услуге). Када је ова променљива дефинисана, конектор се повезује са наведеном базом података користећи Oracle слушалац који прихвата захтеве за повезивање. Ова променљива је за употребу само на Linux-у и UNIX-у. За Microsoft Windows користите променљиву окружења LOCAL.

Пример

Повежите се на базу података користећи Назив мрежне услуге подешен као ORCL и подразумевани порт. Параметри базе података постављени у конфигурационој датотеци сервера или проксија (zabbix_server.conf и zabbix_proxy.conf):

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

Током инсталације Zabbix корисничког интерфејса, поставите одговарајуће параметре у корак Конфигурација DB конекције чаробњака за подешавање:

  • Домаћин базе података:
  • Порт базе података: 0
  • Име базе података: ORCL
  • Корисник: myusername
  • Лозинка: mypassword

Алтернативно, ови параметри се могу подесити у конфигурацији датотеке корисничког интерфејса (zabbix.conf.php):

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

Стринг за конекцијуDBUser који Zabbix користи за успостављање везе:

DBUser/DBPassword@ORCL

Познати проблеми

Да бисте побољшали перформансе, можете да конвертујете типове поља из nclob у nvarchar2, погледајте познати проблеми.