A Áú»¢¶Ä²© database must be created during the installation of Áú»¢¶Ä²© server or proxy.
This section provides instructions for creating a Áú»¢¶Ä²© database. A separate set of instructions is available for each supported database.
UTF-8 is the only encoding supported by Áú»¢¶Ä²©. It is known to work without any security flaws. Users should be aware that there are known security issues if using some of the other encodings.
If installing from , you need to run:
$ make dbschema
prior to proceeding to the next steps.
Character set utf8 and utf8_bin collation is required for Áú»¢¶Ä²© server/proxy to work properly with MySQL database.
shell> mysql -uroot -p<password>
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user 'zabbix'@'localhost' identified by '<password>';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
mysql> quit;
If you are installing from Áú»¢¶Ä²© packages, stop here and continue with instructions for RHEL/CentOS or Debian/Ubuntu to import the data into the database.
If you are installing Áú»¢¶Ä²© from sources, proceed to import the data into the database. For a Áú»¢¶Ä²© proxy database, only schema.sql
should be imported (no images.sql nor data.sql):
shell> cd database/mysql
shell> mysql -uzabbix -p<password> zabbix < schema.sql
# stop here if you are creating database for Áú»¢¶Ä²© proxy
shell> mysql -uzabbix -p<password> zabbix < images.sql
shell> mysql -uzabbix -p<password> zabbix < data.sql
You need to have database user with permissions to create database objects. The following shell command will create user zabbix
. Specify password when prompted and repeat password (note, you may first be asked for sudo
password):
Now we will set up the database zabbix
(last parameter) with the previously created user as the owner (-O zabbix
).
If you are installing from Áú»¢¶Ä²© packages, stop here and continue with instructions for RHEL/CentOS or Debian/Ubuntu to import the initial schema and data into the database.
If you are installing Áú»¢¶Ä²© from sources, proceed to import the initial schema and data (assuming you are in the root directory of Áú»¢¶Ä²© sources). For a Áú»¢¶Ä²© proxy database, only schema.sql
should be imported (no images.sql nor data.sql).
shell> cd database/postgresql
shell> cat schema.sql | sudo -u zabbix psql zabbix
# stop here if you are creating database for Áú»¢¶Ä²© proxy
shell> cat images.sql | sudo -u zabbix psql zabbix
shell> cat data.sql | sudo -u zabbix psql zabbix
The above commands are provided as an example that will work in most of GNU/Linux installations. You can use different commands, e. g. "psql -U <username>" depending on how your system/database are configured. If you have troubles setting up the database please consult your Database administrator.
Instructions for creating and configuring TimescaleDB are provided in a separate section.
We assume that a zabbix database user with password password exists and has permissions to create database objects in ORCL service located on the host Oracle database server with a user shell user having write access to /tmp directory. Áú»¢¶Ä²© requires a Unicode database character set and a UTF8
national character set. Check current settings:
sqlplus> select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';
If you are creating a database for Áú»¢¶Ä²© server you need to have images from Áú»¢¶Ä²© sources on the host where Oracle is running. Copy them to a directory /tmp/zabbix_images on the Oracle host:
shell> cd /path/to/zabbix-sources
shell> ssh user@oracle_host "mkdir /tmp/zabbix_images"
shell> scp -r misc/images/png_modern user@oracle_host:/tmp/zabbix_images/
Now prepare the database:
shell> cd /path/to/zabbix-sources/database/oracle
shell> sqlplus zabbix/password@oracle_host/ORCL
sqlplus> @schema.sql
# stop here if you are creating database for Áú»¢¶Ä²© proxy
sqlplus> @images.sql
sqlplus> @data.sql
Please set the initialization parameter CURSOR_SHARING=FORCE for best performance.
Now the temporary directory can be removed:
Using SQLite is supported for Áú»¢¶Ä²© proxy only!
If using SQLite with Áú»¢¶Ä²© proxy, database will be automatically created if it does not exist.
Return to the installation section.