postgresql多实例创建与Slony-I复制配置

本文详细介绍了如何在Linux系统上创建和管理多个PostgreSQL实例,包括创建目录、初始化数据库、启动和配置实例,以及设置监听和外部访问。接着,文章讲解了安装和配置Slony-I复制的过程,包括编译Slony-I软件、编辑slon_tools.conf配置文件以及启动同步服务。最后,通过实例验证了Slony-I复制的正确性和实时性,实现了PostgreSQL主从同步。
摘要由CSDN通过智能技术生成

第一部分 在一个主机上创建多个 postgresql实例

步骤一:安装postgresql软件
安装 postgresql实例,从postgresql官网上  https://www.postgresql.org/ 下载postgresql安装软件,解压缩,创建postgres用户和组,添加环境变量。
我这里下载的版本是 pgsql9.5.1。

创建postgresql实例
安装了postgresql软件后,创建postgresql实例有三个步骤:创建实例目录,创建数据库簇初始化数据库(命令为 initdb),启动实例服务(用 pg_ctl命令)并进行相关配置。

步骤一:创建目录和文件:
su - postgres
mkdir -p /data/pgsql/{data,data02}

步骤二:初始化实例1:
export PGDATA=/data/pgsql/data
initdb

步骤三:启动postgresql实例1
pg_ctl  -D /data/pgsql/data -l /data/pgsql/data/postgres.log start

实例2也可用按照上面的三个步骤进行创建:
初始实例2:
export PGDATA=/data/pgsql/data02
env | grep PGDATA
initdb

启动实例2:
pg_ctl  -D /data/pgsql/data02 -l /data/pgsql/data/postgres02.log start

如果要关闭数据库,可用用羡慕的命令停止数据库:
pg_ctl stop -D /data/pgsql/data02 -m fast

步骤二:配置实例监听和外部访问
修改实例2的启动文件和端口,如果一个服务器上有多个实例,每个实例的端口都要不同,为了能够让客户端访问,需要在配置文件添加监听,在pg_hba.conf中添加梵文权限:
修改postgresql实例,启动配置参数文件:
vim postgresql.conf

listen_addresses = '*'      # what IP address(es) to listen on;
port = 5433             # (change requires restart)
max_connections = 100           # (change requires restart)

这些参数修改后,重启postgresql实例才能生效,postgresql实例重启后会监听本服务器上所有IP的5433端口。
重启postgresql实例的命令为:
pg_ctl stop -D /data/pgsql/data02 -m fast
pg_ctl  -D /data/pgsql/data02 -l /data/pgsql/data/postgres02.log start

修改postgresql实例访问权限文件:
vim pg_hba.conf

# IPv4 local connections:
host    all             all             192.168.1.0/24            trust
上面的参数添加后,postgresql实例,就可以允许 192.168.1.0/24 网段的主机通过各个用户以有密码认证的方式访问实例中存在的库。
如果要进行严格限定,可以对应修改相关部分。文件修改后,需要重新加载配置文件才能生效:
pg_ctl reload

实例启动并修改了访问权限后,连接postgresql 实例的格式为:
psql -h <IP地址> -p <端口> [数据库名称] [用户名称]

示例:
psql -h 192.168.10.119 -p 5432 testdb postgres
psql -h 192.168.10.119 -p 5433 postgres postgres

这样从安装postgresql软件,到创建、配置并使用postgresql多实例,就完成了。

############################

第二部分 在Linux系统下安装 Slony-I 软件


一般Linux的各种发行版本中会自带 slony-I ,但自带的版本比较旧,可以从slony的官网下载最新的版本安装。

编译安装 slony-I 软件
在 slony 官方网站 http://www.slony.info/ ,点击 Dowload 进入下载页面(注意:由于我的postgresql版本是比较新的 9.5,一开始使用 slony1-2.1.3版本有报错,于是安装了最新的 slony1-2.2.5 版本);
选择合适的版本,这里选择 2.2 ;
弹出的界面选择直接下载源码,还是使用cvs界面,这里选择“直接下载源码”;
选择要下载的小版本,这里选择 2.2.5 ,文件名称为 slony1-2.2.5.tar.br2
下载完成后,把下载得来的源码包放到一个目录下,使用命令解压缩:
cd /usr/local/src
rz slony1-2.2.5.tar.bz2
tar xvf slony1-2.2.5.tar.bz2
解压生成目录 slony1-2.2.5 ,进入此目录,用Linux编译三板斧进行编译安装:
cd slony-2.2.5
./configure --with-perltools -with-pgconfigdir=/usr/local/pgsql/bin
make
make install
注意编译时,需要找到 pg_config可执行程序,如果在pgsql的目录中,可以直接指定config;如果不在bin目录下,需要指定 with-pgconfigdir参数的目录;
另外 slony-I 中有一套Perl脚本工具,名称为 altperl scripts,可以简化slony-I的配置,默认编译不会带上该脚本,需要编译时,带上 --with perltools进行编译;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值