PostgreSQL 9.4 流复制主备搭建
更新时间:2024-06-24 18:14:01 阅读量: 综合文库 文档下载
- post过去分词推荐度:
- 相关推荐
CentOS 6.6_x64搭建PostgreSQL 9.4流复制环境
环境介绍: ServerHostname Node1 Node2
一.安装两台CentOS 6.6_x64,并更改主机名、配置网络、关闭防火墙。 二.两台主机间实现无密key访问。
1. 节点一生成公钥和私钥
# ssh-keygen(过程中出现三个需要输入的地方直接按回车键)
Network 10.10.10.193/24 10.10.10.194/24 Application Master server Slave server Account root 1qaz!QAZ
此时在.ssh目录下生成了id_rsa和id_rsa.pub。其中id_rsa是私钥,本机要用;id_rsa.pub是公钥,给其他的机器用。 2. 将公钥上传到远程主机上
按照提示输入远程主机(10.10.10.194)的密码后,可看到上传成功的提示:
3. 登录远程主机,将客户端公钥写入authorized_keys文件
[root@node1 .ssh]# ssh 10.10.10.194
root@10.10.10.194's password:
Last login: Tue Nov 17 14:24:30 2015 from 10.10.10.1 [root@node2 ~]# cd /root/.ssh [root@node2 .ssh]# ls id_rsa.pub
[root@node2 .ssh]# cat id_rsa.pub >> authorized_keys
此时可在node2机器的.ssh目录下看到两个文件authorized_keys和id_rsa.pub。其中id_rsa.pub的主要目的就是把公钥信息写到authorized_keys中。然后把两台主机中的id_rsa.pub都删除掉,否则这台机器将无法不用密码登录别的机器。 4. 此时在node1上可直接ssh node2
5. 若要实现两台linux主机之间的无密码登录,只需把上述的两台主机对调一下再操
作一遍即可。 参考链接:
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=7654720&id=4236912 三.两台主机在线安装postgresql9.4,并初始化数据库。
1. 通过yum安装,获取PostgreSQL官方的yum源
wget
http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-2.noarch.rpm
2. 安装PostgreSQL官方的yum源
# rpm -ihv pgdg-centos94-9.4-2.noarch.rpm
3. 安装PostgreSQL数据库
# yum -y install postgresql94 postgresql94-server
4. 设置用户postgres密码(密码也为postgres)
# passwd postgres 5. 修改PostgreSQL脚本名称为psql
# mv /etc/init.d/postgresql-9.4 /etc/init.d/psql 6. 初始化数据库
# service psql initdb
四.MasterServer(Node1)配置
1. 启动数据库服务,并设置开机启动
# service psql start # chkconfig psql on 2. 关闭数据库服务
# service psql stop
以下修改PG的配置文件
3. 修改postgresql.conf文件
# vi /var/lib/pgsql/9.4/data/postgresql.conf 修改如下内容:
listen_addresses = '*' wal_level = hot_standby archive_mode = on
archive_command = 'rsync -av %p postgres@10.10.10.194:archive/%f' archive_timeout = 300 max_wal_senders = 1 wal_keep_segments = 300
4. 修改pg_hba.conf文件
# vi /var/lib/pgsql/9.4/data/pg_hba.conf 最后一行添加内容如下:
host replication postgres 10.10.10.0/24 trust 如果使用GUI客户端工具登陆数据库,再添加如下内容: host all postgres 10.10.10.0/24 trust
五.SlaveServer(Node1)配置
1. 确保psql服务停掉
2. 修改postgresql.conf文件
# vi /var/lib/pgsql/9.4/data/postgresql.conf
修改内容如下: listen_addresses = '*' hot_standby = on
修改pg_hba.conf文件,如果使用GUI客户端工具登陆数据库,添加如下内容: host all postgres 10.10.10.0/24 trust
3. 创建recovery.conf文件
# vi /var/lib/pgsql/9.4/data/recovery.conf 输入如下内容:
restore_command = 'cp /var/lib/pgsql/archive/%f %p' standby_mode = 'on'
primary_conninfo = 'host=10.10.10.193 port=5432 user=postgres password=postgres' 4. 创建archive目录,并授权
# mkdir /var/lib/pgsql/archive
# chmod 777 /var/lib/pgsql/archive/
六.MasterServer(Node1)备份数据并归档
1. 启动数据库服务
# service psql start
2. 切换postgres用户,并登陆数据库
# su – postgres $ psql -d postgres
3. 备份数据库
# select pg_start_backup('base');
4. CRT工具克隆新会话,进行归档、同步数据
进入到/var/lib/pgsql/9.4/data/目录,执行命令:
# rsync -av --exclude postmaster.pid --exclude postgresql.conf --exclude pg_ident.conf
--exclude pg_hba.conf /var/lib/pgsql/9.4/data/* 10.10.10.194:/var/lib/pgsql/9.4/data/
执行结果如下:
5. 返回到备份会话,停止备份。
# select pg_stop_backup();
七.SlaveServer(Node2)启动数据库并开机启动
# service psql start # chkconfig psql on
八.使用GUI工具Navicat Premium连接数据库验证是否同步。
1. 连接MaserServer
正在阅读:
【新版】人美版六年级美术上册《家乡的老房子》教案【名校精品】05-08
个人及工作中存在的不足及改进措施07-06
C整理题库(更新版)03-17
2017-2018学年湖北省襄阳市宜城市七年级(下)期末语文试卷05-25
影响中国房地产价格指数的宏观因素分析06-02
留学知识-新加坡留学时间安排规划合理安排申请时间才能事半功倍! 精品12-16
生物化学基本复习题201304-10
咏燕02-19
鼓风机开停车方案11-09
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 搭建
- PostgreSQL
- 复制
- 9.4