postgresql使用hot standby集群方案安装和测试

使用的postgres版本为 postgresql-9.3.6.tar.gz 版本

     一、使用两台物理主机 操作系统为redhat6.5

点击(此处)折叠或打开

  1. [postgres@v136 ~]$ lsb_release -a
  2. LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
  3. Distributor ID: RedHatEnterpriseServer
  4. Description: Red Hat Enterprise Linux Server release 6.5 (Santiago)
  5. Release: 6.5
  6. Codename: Santiago
    二、 在主服务器和从服务器分别创建postgres用户,并在用户目录下编译安装,安装过程中提示缺少的依赖包,通过yum安装
   

点击(此处)折叠或打开

  1. [postgres@v136 ~]$tar -zxvf postgresql-9.3.6.tar.gz
  2. [postgres@v136 ~]$mkdir pgsql/
  3. [postgres@v136 ~]$cd postgresql-9.3.6/
  4. [postgres@v136 ~]$./configure --prefix=/home/postgres/pgsql
  5. [postgres@v136 ~]$ make && make install
     三、 安装完 成后,在主服务器目录下初始化主数据库并启动

点击(此处)折叠或打开

  1. [postgres@v136 ~]$mkdir -p /home/postgres/pgsql/data/
  2. [postgres@v136 ~]$./initdb -D /home/postgres/pgsql/data/ -E UTF8 --locale=C -U postgres -W

    四、修改postgresql.conf和pg_hba.conf ,内容如下

点击(此处)折叠或打开

  1. vi postgresql.conf 如下:
  2. work_mem = 2GB
  3. maintenance_work_mem = 2GB
  4. max_files_per_process = 2000
  5. effective_cache_size = 1GB
  6. wal_level = hot_standby
  7. archive_mode = on
  8. archive_command = 'cp -i %p ../archivedir/%f < /dev/null'
  9. max_wal_senders = 2
  10. wal_keep_segments = 32
  11. synchronous_standby_names = '*'

点击(此处)折叠或打开

  1. vi pg_hba.conf
  2. host replication postgres 0.0.0.0/0 trust
  3. host all all 0.0.0.0/0 trust
    五、启动主服务器数据库

点击(此处)折叠或打开

  1. [postgres@v136 ~]$./pg_ctl -D /home/postgres/pgsql/data/ -l logfile start

    六、检查主数据库是否成功

点击(此处)折叠或打开

  1. [postgres@v126 bin]$ ./psql 
    psql (9.3.6)
    Type "help" for help.
    postgres=# select version();
                                                       version                                                    
    --------------------------------------------------------------------------------------------------------------
     PostgreSQL 9.3.6 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4), 64-bit
    (1 row)


    七、设置主库为pg_start_backup(''),并把初始化完成的主库data目录,复制到从数据库的相同目录下,这步骤是关键

点击(此处)折叠或打开

  1. postgres=# select pg_start_backup('');
  2. 这行select pg_start_bakcup('')命令后所有请求不在写磁盘。直到执行pg_stop_bakcup('')结束。

     八、设置从数据库配置 postgresql.conf和recovery.conf,并删除 postmaster.pid文件

点击(此处)折叠或打开

  1. 修改postgresql.conf 如下
  2. work_mem = 2GB
    maintenance_work_mem = 2GB
    max_files_per_process = 2000
    effective_cache_size = 1GB

  3. wal_level = hot_standby
    hot_standby = on

点击(此处)折叠或打开

  1. 修改recovery.conf
  2. standby_mode = on
    primary_conninfo = 'host=10.7.0.126 port=5432 user=postgres'

    九、启动从数据库,并停止主数据库的backup状态
 

点击(此处)折叠或打开

  1. [postgres@v136 ~]$./pg_ctl -D /home/postgres/pgsql/data/ -l logfile start
  2. 在主数据库上另外开一个终端并执行如下命令,管理两个主数据库mingl
  3. [postgres@v135 ~]$./psql -d postgres
  4. postgres=#select pg_stop_backup();

  5. 两个终端窗口分别收到如下,表示结束基础备份
  6. postgres=# select pg_start_backup('');
     pg_start_backup 
    -----------------
     0/A000028
    (1 row)

  7. postgres=# select pg_stop_backup('');
     pg_stop_backup 
    -----------------
     0/A0000F0
    (1 row)


    十一、登录并验证主从数据库同步情况,分别创建tt表并主从都正常,完成host standby配置。

点击(此处)折叠或打开



  1. postgres=# \dt
                List of relations
     Schema |     Name     | Type  |  Owner   
    --------+--------------+-------+----------
     public | dd           | table | postgres




 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27039319/viewspace-2079167/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/27039319/viewspace-2079167/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值