环境: CentOS6.9 x86_64

机器的网络环境:10.X.X.X/8     (8位掩码)


# 安装rpm包

yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6-x86_64/pgdg-centos96-9.6-3.noarch.rpm -y 
yum install postgresql96 postgresql96-server -y


# 准备pgsql的数据存放目录

mkdir /bdata/data/nowdb2/
chown postgres.postgres /bdata/data/nowdb2/ -R 
chmod 700 /bdata/data/nowdb2/


vim /etc/init.d/postgresql-9.6   修改下启动脚本里面的PGDATA路径:

PGDATA=/bdata/data/nowdb2/data
PGLOG=/bdata/data/nowdb2/pgstartup.log



# 初始化数据库

/etc/init.d/postgresql-9.6 initdb



su - postgres  编辑 .bash_profile 文件,写入PGHOME和PGDATA,便于后期使用,内容如下:

[ -f /etc/profile ] && source /etc/profile
PGDATA=/bdata/data/nowdb2/data
PGHOME=/usr/pgsql-9.6/
export PGDATA
export PGHOME
[ -f /var/lib/pgsql/.pgsql_profile ] && source /var/lib/pgsql/.pgsql_profile


# 使环境变量生效

source /var/lib/pgsql/.pgsql_profile



vim /bdata/data/nowdb2/data/postgresql.conf 修改部分参数(实际上可以修改的参数有很多),例如:

listen_addresses = '*'
port = 5432
max_connections = 500
shared_buffers = 1024MB
temp_buffers = 16MB
work_mem = 4MB




# 启动pgsql

$PGHOME/bin/pg_ctl start -D $PGDATA



# 创建一个复制权限的账号,便于后期使用

CREATE ROLE replica login replication encrypted password 'replica';


# 给postgres账号加个密码,后期会用于pg_rewind使用:

alter user postgres password 'postgres';


# 创建一个普通账户及业务库

create database db1;
create user devuser3 login password '111111' valid until '2020-01-11';
alter database db1 owner to devuser3 ;




编辑授权文件:

vim pg_hba.conf 增加一行: 

host all postgres 10.0.0.0/8 md5
host all devuser3  10.0.0.0/8 md5



# 重载配置文件

$PGHOME/bin/pg_ctl reload -D $PGDATA


这样,我们就可以在其它机器上连接到postgresql啦。