设为首页 加入收藏

TOP

centos6.5下postgres-XC集群安装与配置(一)
2015-11-21 01:41:16 来源: 作者: 【 】 浏览:9
Tags:centos6.5 postgres-XC 集群 安装 配置

前言

最近在学习postgresql,工作中需要,买了一本《PostgreSQL修炼之道》按照上面操作,几次按照上面的都是失败。后面查看很多资料后,才成功。这是根据这本书第十九章内容修改的地方,希望给广大学习爱好者帮助。最后希望那些作者,把书写的详细一些,把自己做成功的案例写出来。

一、系统环境

系统平台:centos 6.5

postgres-XC版本: pgxc-v1.2.1.tar.gz

防火墙关闭 selinux设置SELINUX=disabled

二、集群规划

主机名

IP地址

角色

端口

nodename

数据目录

gtm

172.16.0.101

Gtm

6666

gtm

/home/pgxc/gtm

standby

172.16.0.102

Gtm的备库

6666

standby

/home/pgxc/gtm_standby

cd1

172.16.0.103

Coordinator

5432

co1

/home/pgxc/coordinator

Datanode

5433

dn1

/home/pgxc/pgdata

Gtm Proxy

6666

gtmproxy01

/home/pgxc/gtm_proxy

cd2

172.16.0.104

Coordinator

5432

co2

/home/pgxc/coordinator

Datanode

5433

dn2

/home/pgxc/pgdata

Gtm Proxy

6666

gtmproxy02

/home/pgxc/gtm_proxy

cd3

172.16.0.105

Coordinator

5432

co3

/home/pgxc/coordinator

Datanode

5433

dn3

/home/pgxc/pgdata

Gtm Proxy

6666

gtmproxy03

/home/pgxc/gtm_proxy

?

三、安装依赖包(五台操作)

yum install -y bison flex perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake

四、增加用户(五台操作)

groupadd pgxc

useradd pgxc -g pgxc

passwd pgxc

?

五、源码安装(五台操作)

tar zxvf pgxc-v1.2.1.tar.gz

cd postgres-xc-1.2.1/

./configure --prefix=/opt/pgxc --with-perl --with-python

gmake

gmake install

六、配置环境变量(五台操作)

su - pgxc

vi .bash_profile

export PGHOME=/opt/pgxc

export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib

export DATE=`date +"%Y%m%d%H%M"`

export PATH=$PGHOME/bin:$PATH:.

export MANPATH=$PGHOME/share/man:$MANPATH

alias rm='rm -i'

alias ll='ls -lh'

?

source .bash_profile

?

七、初始化GTM

在172.16.0.101这台机器上运行如下命令:

[root@gtm ~]# su - pgxc

[pgxc@gtm ~]$ initgtm -Z gtm -D /home/pgxc/gtm

编辑/home/pgxc/gtm/gtm.conf文件,如下:

?

nodename = 'gtm'

listen_addresses = '*'

port = 6666

startup = ACT

配置项的说明如下。

nodename:指定节点的名称,可能指定为任意的一个名称,不能与其他节点的名称重复。

listen_address:GTM监听的IP地址,“*”在所有的IP地址上监听

port:GTM监控的端口

startup:确定GTM启动后是主库还是standby。如果是主库,设置为“ACT”,如果是standby,则设置为“STANDBY”。

八、初始化GTM的备库

在172.16.0.102这台机器上运行如下命令:

[root@standby ~]# su - pgxc

[pgxc@standby ~]$ initgtm -Z gtm -D /home/pgxc/gtm_standby

编辑/home/pgxc/gtm_standby/gtm.conf文件,如下:

?

nodename = 'standby'

listen_addresses = '*'

port = 6666

startup = STANDBY

active_host = '172.16.0.101'

active_port =6666

配置项的说明如下。

startup:因为是GTM的备库,所以要设置为“STANDBY”。

active_host:指定连接GTM主库的IP地址

active_port:指定连接GTM备库的端口。

?

九、初始化GTM Proxy

在172.16.0.103,172.16.0.104,172.16.0.105这三台机器pgxc用户上,分别执行以下命令:

initgtm -Z gtm_proxy -D /home/pgxc/gtm_proxy

?

172.16.0.103中配置文件 /home/pgxc/gtm_proxy/gtm_proxy.conf的内容如下:

nodename = 'gtmproxy01'

port = 6666

gtm_host = '172.16.0.101'

gtm_port = 6666

?

172.16.0.104中配置文件 /home/pgxc/gtm_proxy/gtm_proxy.conf的内容如下:

nodename = 'gtmproxy02'

port = 6666

gtm_host = '172.16.0.101'

gtm_port = 6666

?

172.16.0.105中配置文件 /home/pgxc/gtm_proxy/gtm_proxy.conf的内容如下:

nodename = 'gtmproxy03'

port = 6666

gtm_host = '172.16.0.101'

gtm_port = 6666

?

十、初始化Coordinator 、数据节点

1.在172.16.0.103这台机器上运行如下命令:

initdb -D /home/pgxc/coordinator --nodename co1 -E UTF8 --local=C -U pgxc -W

initdb -D /home/pgxc/pgdata --nodename dn1 -E UTF8 --local=C -U pgxc -W

?

172.16.0.103这台机器上 coordinator配置文件/home/pgxc/coordinator/postgresql.c

首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇小贝_redislist类型学习 下一篇数据库中为什么需要ImplictCommit..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: