1 Scripts de criação de banco

Visão geral

Um banco de dados precisa ser criado para o Zabbix durante o seu processo de instalação (tanto para o Zabbix Server quanto para o Zabbix Proxy).

Esta seção fornece scripts para criação do banco do Zabbix. Um script específico para o esquema de banco de dados é fornecido para cada banco suportado.

Os arquivos schema.sql, images.sql e data.sql podem ser encontrado com os códigos fonte do Zabbix, no subdiretório database. Se o seu Zabbix tiver sido instalado a partir de pacotes da distribuição, recorra a documentação da distribuição.

Para o Zabbix Proxy o banco de dados deve importar SOMENTE o arquivo schema.sql (não se deve importar os arquivos images.sql ou data.sql)

Scripts

MySQL

shell> mysql -uroot -p<password>
       mysql> create database zabbix character set utf8 collate utf8_bin;
       mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<password>';
       mysql> flush privileges;
       mysql> quit;
       shell> cd database/mysql
       shell> mysql -uzabbix -p<password> zabbix < schema.sql
       # stop here if you are creating database for Zabbix proxy
       shell> mysql -uzabbix -p<password> zabbix < images.sql
       shell> mysql -uzabbix -p<password> zabbix < data.sql

PostgreSQL

Nós assumimos aqui que o usuário username existe e tem privilégios para criar objetos de banco de dados.

shell> psql -U <username>
       psql> create database zabbix; 
       psql> \q 
       shell> cd database/postgresql
       shell> psql -U <username> zabbix < schema.sql
       # stop here if you are creating database for Zabbix proxy
       shell> psql -U <username> zabbix < images.sql
       shell> psql -U <username> zabbix < data.sql

Oracle

Nós assumimos aqui que o usuário zabbix com a senha password existe e tem privilégios para criar objetos de banco de dados no serviço ORCL existente no 'Oracle database server' com o usuário de shell user tendo permissão de gravação ao diretório /tmp.

Se você estiver criando o DB para o Zabbix Server você precisa ter uma localização pré-definida para imagens no Oracle.
Copie todas as imagens do diretório misc/images/png_modern para /tmp/zabbix_images no servidor Oracle:

shell> cd /path/to/zabbix-sources  
       shell> scp -r misc/images/png_modern user@host:/tmp/zabbix_images  

Agora prepare o DB:

shell> cd database/oracle
       shell> sqlplus zabbix/password@host/ORCL
       sqlplus> @schema.sql
       # Pare aqui se estiver criando um banco de dados para o proxy
       sqlplus> @images.sql
       sqlplus> @data.sql

Após executar o script images.sql o diretório temporário /​tmp/​zabbix_images pode ser removido.

O Zabbix precisa do DB usando o conjunto de caracteres UTF-8. Se o banco de dados não for UTF-8, poderá ser convertido usando o comando: ALTER DATABASE NATIONAL CHARACTER SET UTF8;

IBM DB2

shell> db2 "create database zabbix using codeset utf-8 territory us pagesize 32768"
       shell> cd database/ibm_db2
       shell> db2batch -d zabbix -f schema.sql
       # Pare aqui se estiver criando um banco de dados para o proxy
       shell> db2batch -d zabbix -f images.sql
       shell> db2batch -d zabbix -f data.sql 

<​note>É improtante configurar o locale em UTF-8 para o Zabbix Server, Zabbix proxy e para o servidor web que hospeda a interface web do Zabbix. De outra forma as informações de texto do Zabbix serão interpretadas pelo IBM DB2 como não-UTF-8 e precisará ser convertido pelo Zabbix para o Banco de dados. O banco de dados irá armazenar dados corrompidos.</​note>​

SQLite

shell> cd database/sqlite3
       shell> sqlite3 /var/lib/sqlite/zabbix.db < schema.sql
       # Pare aqui se estiver criando um banco de dados para o proxy
       shell> sqlite3 /var/lib/sqlite/zabbix.db < images.sql
       shell> sqlite3 /var/lib/sqlite/zabbix.db < data.sql

Se você estiver usando o SQLite com o Zabbix proxy, o esquema de banco será criado automaticamente se não existir.

Consulte também o manual de instalação segura.