rpm -ivh http://download.postgresql.org/pub/repos/yum/9.4/redhat/rhel-7.2-x86_64/pgdg-centos94-9.4-3.noarch.rpm

yum install postgresql94-server postgresql94-contrib -y

#首先在/home下创建一个Postgresql的数据目录
mkdir /home/postgresql_data

#然后为这个目录指定所有者同时分配权限
chown postgres:postgres /home/postgresql_data -R

chmod 0700 /home/postgresql_data

#请在root用户和切换至postgres用户,同时设置环境变量
export PATH=/usr/pgsql-9.4/bin:$PATH

export LD_LIBRARY_PATH=/usr/pgsql-9.4/lib

export PGDATA=/home/postgresql_data

#然后source使环境变量生效
source .bash_profile

#然后使用命令initdb生成数据库簇,
initdb

#最后尝试启动Postgresql服务

pg_ctl start -D $PGDATA

#使用 ps -ef | grep postgres 验证,如果有一堆postgres相关进程,那就安装成功了。

如果就到此结束了,貌似第4步就没法做了,因为使用 systemctl start postgresql-9.4 将不会成功的,为啥呢?请打开
vi /usr/lib/systemd/system/postgresql-9.4.service ,因为在#Location of database direcotry配置节里面没有指定正确的PGDATA。所以我们需要将下面的PGDATA设置成正确值

#Location of database directory
Environment=PGDATA=/home/postgresql_data

#设置服务开机自启动
systemctl enable postgresql-9.4.service
systemctl start postgresql-9.4.service(注意:如果已经使用pg_ctl start -D $PGDATA启动数据库,必须先停止数据库运行pg_ctl stop,否则将会由于端口冲突导致数据库服务无法启动)
systemctl status postgresql-9.4.service
------------------------------------------------------------------------------------------

安装数据库同步

在主数据库db1上执行:

mkdir -p /home/postgresql_data/xlog_archive
---------------------------------------------------

vi /home/postgresql_data/postgresql.conf

listen_addresses = '*'
wal_level = hot_standby
synchronous_commit = on
archive_mode = on
archive_command = 'cp %p /home/postgresql_data/xlog_archive/%f'
max_wal_senders=5
wal_keep_segments = 32
hot_standby = on
restart_after_crash = off
restart_after_crash = off

-------------------------------------------------------------
#创建用于数据库同步的用户replica并授予权限
create user replica superuser password 'replica';
--------------------------------------------------------------
vi /home/postgresql_data/pg_hba.conf

local all all trust
host all all 192.168.2.0/24 trust #允许94连接到主服务器
host replication replica 192.168.2.0/24 md5 #允许94使用postpgresql用户来复制

---------------------------------------------------------------
db1上切换postgresql用户执行:

pg_ctl start -D $PGDATA

或者root用户执行:

systemctl restart postgresql-9.4.service
-----------------------------------------------------------

在从数据库db2上执行

#首先在/home下创建一个Postgresql的数据目录
mkdir /home/postgresql_data

#然后为这个目录指定所有者同时分配权限
chown -R postgres:postgres /home/postgresql_data

chmod 7500 /home/postgresql_data

#然后切换用户:

su - postgres

pg_basebackup -h 192.168.2.103 -U postgres -D $PGDATA -X stream -P(提示输入postgres用户密码)
Password:
86664/86664 kB (100%), 1/1 tablespace

-------------------------------------------------------------------------
vi /home/postgresql_data/recovery.conf
standby_mode = on # 说明该节点是从服务器
primary_conninfo = 'host=192.168.2.103 port=5432 user=postgres password=postgres' # 主服务器的信息以及连接的用户
recovery_target_timeline = 'latest'
--------------------------------------------------------------------------
#启动数据库

pg_ctl -D /data/postgresql/data/ start 或 systemctl start postgresql-9.4.service

Centos 安装postgreSQL9.4.3的更多相关文章

  1. CentOS 6.5安装PostgreSQL9.3.5时报错: jade: Command not found

    CentOS 6.5安装PostgreSQL9.3.5时报错: jade: Command not found 1[root@pghost1 postgresql-9.3.5]# ./configur ...

  2. centos 安装PGSQL

    centos 安装PGSQLCentOS下yum安装PostgreSQL目录 1 Configure YUM repository2 Install PGDG RPM file3 Install Po ...

  3. CentOS7安装PostgreSQL9.4

    这次选择的数据库安装的是run 文件,更容易掌握.这次数据库全是默认安装,如果有需求的可以自行修改一下的. 这是我的第一篇博客,各位观众老爷,如果觉得哪里有什么不好的,可以留言一起探讨,探讨.有什么问 ...

  4. linux(centos6) 下安装 postgresql-9.3.1.tar.gz

    目录 一. 环境 二.准备工作 三.先安装 make, gcc ,gcc-c++,readline-devel ,zlib-devel .如果已安装,可以忽略 四.开始安装 4.1 解压 tar -z ...

  5. CentOS安装gitlab,gerrit,jenkins并配置ci流程

    CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...

  6. 【推荐】CentOS安装Subversion-1.8.11+HTTP协议支持配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...

  7. 【推荐】CentOS安装PHP-5.6.4+扩展安装+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 前段时间PHP官方发布了一个重要的安全升级公告,修复了两个unserialize函数的严重漏洞,目前受影响的版本有: ...

  8. CentOS安装Apache-2.4.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...

  9. CentOS安装Nginx-1.6.2+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了pcre等基础组件,具体见<CentOS安装LNMP环境的基础 ...

随机推荐

  1. 【java学习笔记2】访问控制修饰符 public、protected、默认、private

    先写了一个User()类: package chapter01; public class User { // 私有的 private int id; // 受保护的 protected int ag ...

  2. Neighbour-Joining (NJ算法)

    clc;clear all;close all; Distance = [0,2,4,6,6,8; 2,0,4,6,6,8; 4,4,0,6,6,8; 6,6,6,0,4,8; 6,6,6,4,0,8 ...

  3. c# 递归 yield关键字的用法

    1.yield实现的功能 yield return: 先看下面的代码,通过yield return实现了类似用foreach遍历数组的功能,说明yield return也是用来实现迭代器的功能的. u ...

  4. VS中RDLC提示类型不一致

    错误"基类包括字段"XXXXXXX",但其类型(Microsoft.Reporting.WebForms.ReportViewer)与控件(Microsoft.Repor ...

  5. MethodHandleVS反射

    Method Handle与反射 如无特殊说明,本文所有代码均基于JDK1.8.0_221 Method Handle入门 反射我们都知道,为我们提供了运行时对类的成员方法访问的手段,极大地提高了Ja ...

  6. Arduino IDE开发ESP8266-01S连接MQTT服务器 控制继电器点亮LED

    准备条件: 1.Arduino IDE 2.ESP-01S模块 2.MQTT服务器 3.手机热点或路由器热点 Wi-Fi芯片 默认订阅的主题是  "开关控制" 当你发送主题  &q ...

  7. cmd命令符大全

    cmd命令大全(第一部分) winver---------检查Windows版本 wmimgmt.msc----打开windows管理体系结构(WMI) wupdmgr--------windows更 ...

  8. Java学习日报10.1

    学习内容一 ********************************** 代码 **********************************public class EnumTest ...

  9. MySQL查询区分大小写敏感问题

    由于mysql是不区分大小写的,所以当你查询的时候,例如数据库里有条数据用户名为UpYou(用户名唯一),当你输入:upyou时发现也可以查询,在某些需求下这样是不允许的,可以在查询语句中加入bina ...

  10. golang unsafe.Pointer与uintptr

    原文地址:https://blog.fanscore.cn/p/33/ 先说结论 uintptr 是一个地址数值,它不是指针,与地址上的对象没有引用关系,垃圾回收器不会因为有一个uintptr类型的值 ...