一、安装postgresql数据库
win64安装postgresql10
- 下载
下载地址https://www.enterprisedb.com/downloads/postgres-postgresql-downloads - 安装
打开安装包,傻瓜式默认安装,请谨记 “数据库密码” 和 “端口号” ,安装完成后,打开任务管理器,打开任务,看到postgresql服务存在,并启动,说明安装成功! - 配置远程连接
- 配置pg_hba.conf文件,文件路径:~/postgre/10/data/
找到#“ IPv4 local connections:”在下面新加一行
host all all ::1/128 md5
(代表所有用户ip都可以连接)
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 trust
# IPv6 local connections:
host all all ::1/128 md5
- 修改postgres监听的IP地址,默认是localhost,postgresql.conf文件路径:~/postgre/10/data/
# - Connection Settings -
#listen_addresses = 'localhost' # what IP address(es) to listen on;
listen_addresses = '*' # what IP address(es) to listen on; <=======新增这行,把localhost改成*,监听所有的IP
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
- 重启postgresql数据库生效
命令控制台cmd跳转到postgresql的安装目录 ,执行命令,输入数据库密码
- 创建zabbix数据库用户并授权
postgres=# create role zabbix login
postgres-# ;
CREATE ROLE
postgres=# \password zabbix
Enter new password:
Enter it again:
postgres=# create database zabbix with template template0 encoding 'UTF8' ;
CREATE DATABASE
postgres=# grant all on database zabbix to zabbix;
GRANT
postgres=# \q
- 导入zabbix数据
- 借助工具导入
在源码下,有zabbix数据库的数据
我是在dbvisualier工具下运行的sql文件,依次执行schema.sql、images.sql、data.sql - centos7远程登录执行导入命令
cd /var/ftp/zabbix-4.4.3/database/postgresql/
psql -Uzabbix -dzabbix -h192.168.118.1 -f schema.sql
psql -Uzabbix -dzabbix -h192.168.118.1 -f images.sql
psql -Uzabbix -dzabbix -h192.168.118.1 -f data.sql
centos7安装postgresql10
- 下载安装
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-
x86_64/pgdg-centos10-10-2.noarch.rpm -y
yum install postgresql10-contrib postgresql10-server -y
- 初始化数据库
Postgresql安装目录是/usr/pgsql-10,而Postgresql的数据目录是/var/lib/pgsql/版本号/data目
录在这里,如果在装系统开始分配var空间足够大则可以继续,如果分配var空间不够,我们需要更改数
据目录,在这里,我们假设var空间足够大。直接开始初始化。
/usr/pgsql-10/bin/postgresql-10-setup initdb
systemctl start postgresql-10
systemctl enable postgresql-10.service
- 登录postgresql并设置密码
su - postgres
psql ALTER USER postgres WITH PASSWORD '123456';
- 创建数据库及用户并赋权
CREATE DATABASE zabbix;
CREATE USER zabbix CREATEDB LOGIN PASSWORD '123456';
GRANT ALL ON DATABASE zabbix TO zabbix;
- 修改监听地址权限
vim /var/lib/pgsql/10/data/postgresql.conf
listen_addresses = '*' # 打开端口5432
vi /var/lib/pgsql/10/data/pg_hba.conf # 修改为MD5
"local" is for Unix domain socket connections only
local all all md5
IPv4 local connections:
host all all 127.0.0.1/32 md5
IPv6 local connections:
host all all ::1/128 md5
Allow replication connections from localhost, by a user with the
replication privilege.
local replication all md5
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5
host all all 0.0.0.0/0 md5 #添加
二、配置Zabbix Server
- 配置zabbix_server.conf参数
[root@Zabbix_GW_server ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
#监听port
ListenPort=10051
#日志存放地点及大小
LogFile=/tmp/zabbix_server.log
LogFileSize=10
#pid文件存放地点
PidFile=/tmp/zabbix_server.pid
#下面几个参数是配置数据库连接参数
#说明:指定数据库信息,对于mysql,若设置为localhost则mysql用SOCKET来连接(需配合参数 DBSocket 使用),否则用IP连接;若DHHOST值为空,则默认连接PostgreSQL
DBHost=192.168.118.1
DBName=zabbix
DBUser=zabbix
DBPassword=123456
DBPort=5432
#监听ip范围
ListenIP=0.0.0.0
#media types中使用script存放目录
AlertScriptsPath=/usr/local/zabbix/alertscripts
- 启动服务zabbix_server
zabbix_server -c /data/zabbix/etc/zabbix_server.conf
tail -f /tmp/zabbix_server.log
三、zabbix页面数据库设置
输入地址访问zabbix界面,http://127.0.0.1/zabbix/setup.php,数据库连接类型选择postgresql,配置数据库信息
特别注意
若之前有安装mysql数据库并运行zabbix成功,访问web页面前要先启动mysql数据库,否则访问zabbix界面会报错:connection to database ‘zabbixdb’ failed: [2002] Can’t connect to local MySQL server through socket