Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

14 Configuração do banco de dados Oracle

Visão geral

Esta seção contém instruções para criar o banco de dados Oracle e configurar as conexões entre o banco de dados e o Zabbix server, proxy e frontend.

O suporte ao Oracle DB está obsoleto desde o Zabbix 7.0.

Criação do banco de dados

Assumimos que um usuário de banco de dados zabbix com a senha password existe e tem permissões para criar objetos de banco de dados no serviço ORCL localizado no servidor de banco de dados Oracle host. O Zabbix requer um conjunto de caracteres Unicode e um conjunto de caracteres nacionais UTF8. Verifique as configurações atuais:

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

Agora prepare o banco de dados:

cd /path/to/zabbix-sources/database/oracle sqlplus zabbix/password@oracle_host/ORCL sqlplus> @schema.sql # pare aqui se estiver criando o banco de dados para o Zabbix proxy sqlplus> @images.sql sqlplus> @data.sql

Por favor, defina o parâmetro de inicialização CURSOR_SHARING=FORCE para melhor desempenho.

Configuração da conexão

O Zabbix suporta dois tipos de identificadores de conexão (métodos de conexão):

  • Easy Connect
  • Net Service Name

Os parâmetros de configuração de conexão para o Zabbix server e o Zabbix proxy podem ser definidos nos arquivos de configuração. Os parâmetros importantes para o server e o proxy são DBHost, DBUser, DBName e DBPassword. Os mesmos parâmetros são importantes para o frontend: $DB["SERVER"], $DB["PORT"], $DB["DATABASE"], $DB["USER"], $DB["PASSWORD"].

O Zabbix usa a seguinte sintaxe de string de conexão:

{DBUser/DBPassword[@<connect_identifier>]} 

<connect_identifier> pode ser especificado tanto na forma de "Net Service Name" quanto de "Easy Connect".

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

O Easy Connect usa os seguintes parâmetros para se conectar ao banco de dados:

  • Host - o nome do host ou endereço IP do computador do servidor de banco de dados (parâmetro DBHost no arquivo de configuração).
  • Port - a porta de escuta no servidor de banco de dados (parâmetro DBPort no arquivo de configuração; se não for definida, a porta padrão 1521 será usada).
  • <service_name> - o nome do serviço do banco de dados que você deseja acessar (parâmetro DBName no arquivo de configuração).

Exemplo

Parâmetros do banco de dados definidos no arquivo de configuração do server ou proxy (zabbix_server.conf e zabbix_proxy.conf):

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

String de conexão usada pelo Zabbix para estabelecer a conexão:

DBUser/DBPassword@DBHost:DBPort/DBName

Durante a instalação do frontend do Zabbix, defina os parâmetros correspondentes na etapa Configure DB connection do assistente de instalação:

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

Como alternativa, esses parâmetros podem ser definidos no arquivo de configuração do frontend (zabbix.conf.php):

$DB["TYPE"] = 'ORACLE'; $DB["SERVER"] = 'localhost'; $DB["PORT"] = '1521'; $DB["DATABASE"] = 'ORCL'; $DB["USER"] = 'myusername'; $DB["PASSWORD"] = 'mypassword';
Nome do serviço de rede

É possível conectar ao Oracle usando o nome do serviço de rede.

<net_service_name> é um nome simples para um serviço que resolve para um descritor de conexão.

Para usar o nome do serviço para criar uma conexão, este nome de serviço deve ser definido no arquivo tnsnames.ora localizado tanto no servidor de banco de dados quanto nos sistemas clientes. A maneira mais fácil de garantir que a conexão será bem-sucedida é definir a localização do arquivo tnsnames.ora na variável de ambiente TNS_ADMIN. O local padrão do arquivo tnsnames.ora é:

$ORACLE_HOME/network/admin/

Um exemplo simples de arquivo tnsnames.ora:

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

Para definir os parâmetros de configuração para o método de conexão "Nome do Serviço de Rede", use uma das seguintes opções:

  • Defina um parâmetro DBHost vazio e defina DBName normalmente:
DBHost= DBName=ORCL
  • Defina ambos os parâmetros e deixe ambos vazios:
DBHost= DBName=

No segundo caso, a variável de ambiente TWO_TASK deve ser definida. Ela especifica o serviço Oracle remoto padrão (nome do serviço). Quando esta variável é definida, o conector conecta-se ao banco de dados especificado usando um listener Oracle que aceita solicitações de conexão. Esta variável é para uso apenas em Linux e UNIX. Use a variável de ambiente LOCAL para Microsoft Windows.

Exemplo

Conecte-se a um banco de dados usando o Nome do Serviço de Rede definido como ORCL e a porta padrão. Parâmetros do banco de dados definidos no arquivo de configuração do server ou proxy (zabbix_server.conf e zabbix_proxy.conf):

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

Durante a instalação do frontend do Zabbix, defina os parâmetros correspondentes na etapa Configure DB connection do assistente de configuração:

  • Database host:
  • Database port: 0
  • Database name: ORCL
  • User: myusername
  • Password: mypassword

Alternativamente, esses parâmetros podem ser definidos no arquivo de configuração do frontend (zabbix.conf.php):

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

String de conexão usada pelo Zabbix para estabelecer a conexão:

DBUser/DBPassword@ORCL

Problemas conhecidos

Para melhorar o desempenho, você pode converter os tipos de campo de nclob para nvarchar2, consulte problemas conhecidos.