Se encuentra viendo la documentación de la versión en desarrollo, puede estar incompleta.
Esta página fue traducida automáticamente. Si detectas un error, selecciónalo y presiona Ctrl+Enter para informarlo a los editores.

1 Creación de la base de datos

Descripción general

Se debe crear una base de datos Zabbix durante la instalación del servidor o proxy de Zabbix.

Esta sección proporciona instrucciones para crear una base de datos Zabbix. Hay un conjunto separado de instrucciones disponible para cada base de datos compatible.

Para mejorar la seguridad de la base de datos creando roles/usuarios de base de datos con privilegios mínimos, consulte las mejores prácticas de creación de bases de datos para cada base de datos compatible:

Para configurar conexiones TLS seguras, consulte Conexión segura a la base de datos.

UTF-8 es la única codificación compatible con Zabbix. Se sabe que funciona sin ningún fallo de seguridad. Los usuarios deben ser conscientes de que existen problemas de seguridad conocidos si se utilizan algunas de las otras codificaciones. Para cambiar a UTF-8, consulte Reparar el conjunto de caracteres y la intercalación de la base de datos Zabbix. Consulte también Límites de filtrado con intercalaciones utf8mb4.

Si instala desde el repositorio Git de Zabbix, debe ejecutar el siguiente comando antes de continuar con los siguientes pasos:

make dbschema

MySQL/MariaDB

Se admiten los conjuntos de caracteres utf8 (también conocido como utf8mb3) y utf8mb4 (con las intercalaciones utf8_bin y utf8mb4_bin respectivamente) para que el servidor/proxy de Zabbix funcione correctamente con la base de datos MySQL. Se recomienda utilizar utf8mb4 para nuevas instalaciones.

Es necesario crear triggers deterministas durante la importación del esquema. En MySQL y MariaDB, esto requiere que GLOBAL log_bin_trust_function_creators = 1 esté establecido si el registro binario está habilitado y no hay privilegios de superusuario y log_bin_trust_function_creators = 1 no está establecido en el archivo de configuración de MySQL.

Si está instalando desde paquetes de Zabbix, continúe con las instrucciones para su plataforma.

Si está instalando Zabbix desde fuentes:

  • Cree y configure una base de datos y un usuario.
mysql -uroot -p<contraseña>
       
       mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
       mysql> create user 'zabbix'@'localhost' identified by '<contraseña>';
       mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
       mysql> SET GLOBAL log_bin_trust_function_creators = 1;
       mysql> quit;
  • Importe los datos en la base de datos y establezca utf8mb4 como conjunto de caracteres por defecto. Para una base de datos de proxy de Zabbix, solo debe importarse schema.sql (no images.sql ni data.sql).
cd database/mysql
       mysql -uzabbix -p<contraseña> zabbix < schema.sql
       # deténgase aquí si está creando la base de datos para el proxy de Zabbix
       mysql -uzabbix -p<contraseña> zabbix < images.sql
       mysql -uzabbix -p<contraseña> --default-character-set=utf8mb4 zabbix < data.sql

log_bin_trust_function_creators puede deshabilitarse después de que el esquema se haya importado correctamente:

mysql -uroot -p<contraseña>
       
       mysql> SET GLOBAL log_bin_trust_function_creators = 0;
       mysql> quit;

PostgreSQL

Necesita tener un usuario de base de datos con permisos para crear objetos de base de datos.

Si está instalando desde paquetes de Zabbix, continúe con las instrucciones para su plataforma.

Si está instalando Zabbix desde fuentes:

  • Cree un usuario de base de datos.

El siguiente comando de shell creará el usuario zabbix. Especifique una contraseña cuando se le solicite y repita la contraseña (tenga en cuenta que, primero, puede que se le pida la contraseña de sudo):

sudo -u postgres createuser --pwprompt zabbix
  • Cree una base de datos.

El siguiente comando de shell creará la base de datos zabbix (último parámetro) con el usuario previamente creado como propietario (-O zabbix).

sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
  • Importe el esquema inicial y los datos (suponiendo que está en el directorio raíz de las fuentes de Zabbix). Para una base de datos de proxy de Zabbix, solo debe importar schema.sql (no images.sql ni data.sql).
cd database/postgresql
       cat schema.sql | sudo -u zabbix psql zabbix
       # deténgase aquí si está creando la base de datos para el proxy de Zabbix
       cat images.sql | sudo -u zabbix psql zabbix
       cat data.sql | sudo -u zabbix psql zabbix

Los comandos anteriores se proporcionan como ejemplo y funcionarán en la mayoría de las instalaciones GNU/Linux. Puede utilizar comandos diferentes dependiendo de cómo esté configurado su sistema/base de datos, por ejemplo:

psql -U <username>

Si tiene algún problema al configurar la base de datos, consulte con su administrador de bases de datos.

TimescaleDB

Las instrucciones para crear y configurar TimescaleDB se proporcionan en una sección separada.

SQLite

¡El uso de SQLite solo es compatible con el proxy de Zabbix!

La base de datos se creará automáticamente si no existe.

Regrese a la sección de instalación.