1 数据库创建脚本

概述

Zabbxi数据库必须在Zabbix服务器和代理安装的时候创建。这部分提供了创建数据库的脚本。 对于每一个支持的数据库都提供了不同的架构脚本。

schema.sql, images.sql and data.sql 这些文件在Zabbix的子目录 database 下. 如果Zabbix是通过分发包安装的, 参考分发包相关文档.

对于Zabbix proxy 数据库, 只需要导入 schema.sql (不需要 images.sql 和 data.sql)

脚本

MySQL

  1. shell> mysql -uroot -p<password>
  2. mysql> create database zabbix character set utf8 collate utf8_bin;
  3. mysql> grant all privileges on zabbix.* to [email protected] identified by '<password>';
  4. mysql> quit;
  5. shell> cd database/mysql
  6. shell> mysql -uzabbix -p<password> zabbix < schema.sql
  7. # stop here if you are creating database for Zabbix proxy
  8. shell> mysql -uzabbix -p<password> zabbix < images.sql
  9. shell> mysql -uzabbix -p<password> zabbix < data.sql

PostgreSQL

我们假定存在一个用户,并且有权限创建数据库。

  1. shell> psql -U <username>
  2. psql> create database zabbix;
  3. psql> \q
  4. shell> cd database/postgresql
  5. shell> psql -U <username> zabbix < schema.sql
  6. # stop here if you are creating database for Zabbix proxy
  7. shell> psql -U <username> zabbix < images.sql
  8. shell> psql -U <username> zabbix < data.sql

Oracle

我们假定存在一个 zabbix 数据库用户和 password 密码 并且有权限创建数据库 in ORCL service located on the host Oracle database server with a user shell user having write access to /tmp directory. Zabbix 要求 Unicode 数据库字符集 和 UTF8 通用字符集. 检查当前设置:

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

如果要创建一个Zabbix server的数据库,需要在Oracle主机上指定目录有images . 在Oracle主机上,复制 images from misc/images/png_modern目录下的文件到 /tmp/zabbix_images 目录:

  1. shell> cd /path/to/zabbix-sources
  2. shell> scp -r misc/images/png_modern [email protected]:/tmp/zabbix_images

Now prepare the database:

  1. shell> cd database/oracle
  2. shell> sqlplus zabbix/[email protected]/ORCL
  3. sqlplus> @schema.sql
  4. # stop here if you are creating database for Zabbix proxy
  5. sqlplus> @images.sql
  6. sqlplus> @data.sql

执行完 images.sql 脚本后, 可以删除临时目录 /tmp/zabbix_images 。

IBM DB2

  1. shell> db2 "create database zabbix using codeset utf-8 territory us pagesize 32768"
  2. shell> cd database/ibm_db2
  3. shell> db2batch -d zabbix -f schema.sql
  4. # stop here if you are creating database for Zabbix proxy
  5. shell> db2batch -d zabbix -f images.sql
  6. shell> db2batch -d zabbix -f data.sql

SQLite

  1. shell> cd database/sqlite3
  2. shell> sqlite3 /var/lib/sqlite/zabbix.db < schema.sql
  3. # stop here if you are creating database for Zabbix proxy
  4. shell> sqlite3 /var/lib/sqlite/zabbix.db < images.sql
  5. shell> sqlite3 /var/lib/sqlite/zabbix.db < data.sql

如果Zabbix proxy使用SQLite ,若没有数据库,会自动创建。

返回 安装部分.