postgreSQL安装

该博客详细介绍了如何在Linux环境下安装PostgreSQL 10.15,并实现主从复制。首先,通过用户添加、下载安装包、编译配置等步骤完成基础安装。接着,在主节点上初始化数据库、创建复制用户并修改配置。在从节点上,通过pg_basebackup进行备份,修改配置文件并启动从库。最后,建立了数据库和用户,并进行了权限授权。错误排查部分提到,如果代码连接报错,需检查信任列表。
摘要由CSDN通过智能技术生成

1.基本信息
中间件名称	部署机器	端口	相关路径	版本postgreSQL	11.100.5.136(主)	5432	部署目录: /admin/tools/mongodb-4.4.2数据目录: /admin/data/mongodb日志目录: /admin/logs/mongodb	10.1511.100.5.137(从)

2.安装

## 1.增加用户
# useradd postgres

## 2.下载软件解压 手动上传到服务器
# pwd
/admin
# tar zxf postgresql-10.15.tar.gz
# mv postgresql-10.15 postgresql-10.15_src
# chown -R root.root postgresql-10.15_src

## 3.编译安装
# yum install -y epel-release zlib-devel readline-devel gcc gcc-c++ perl-ExtUtils-Embed python-devel  ## 安装依赖

# pwd
/admin/postgresql-10.15_src
# ./configure --prefix=/admin/postgresql-10.15 --with-python --with-perl
# make && make install 
## 以下2命令可以不用执行, 执行后会生成比较实用的工具,建议安装. 会在
## /admin/postgresql-10.15/bin 下生成3个命令oid2name pg_standby vacuumlo
# cd /admin/postgresql-10.15_src/contrib
# make && make install
# chown -R postgres.postgres /admin/postgresql-10.15

## 设置为开机自启
# cp /admin/postgresql-10.15_src/contrib/start-scripts/linux /etc/init.d/postgresql
# chmod 755 /etc/init.d/postgresql
# chkconfig --add postgresql
# chkconfig postgresql on

## 详细内容如下
下载地址: https://download.csdn.net/download/sun_xuegang/14919929 
文件名: postgresql

##########  到此处位置 主从安装都一样  ##########
## 3.1在主节点(11.100.5.136)操作
## (1)初始化数据库
# su - postgres
$ pwd
/admin/postgresql-10.15
$ ./bin/initdb -D /admin/postgresql-10.15/data/    ## 初始化数据库

## (2)修改配置,启动数据库
$ cat data/postgresql.conf
下载地址: https://download.csdn.net/download/sun_xuegang/14919929 
文件名: M_postgresql.conf

# /etc/init.d/postgresql start   ## 使用root用户启动数据库

## (3)创建主从备份用户
$ ./bin/psql 
psql (10.15)
Type "help" for help.
postgres=# create role repl login replication encrypted password 'repl123';
CREATE ROLE

##(4)修改配置文件,追加最后一行,并重启使之生效
$ tail -4 data/pg_hba.conf
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust
host	replication	repl		11.100.5.137/32		md5

## 详细内容如下

# /etc/init.d/postgresql restart  ##重启数据库

## 3.2在从节点(11.100.5.137)操作
## (1)从主库将数据备份到从库
# su - postgres
$ pwd
/admin/postgresql-10.15
$ ./bin/pg_basebackup -h 11.100.5.136 -p 5432 -U repl -F p -P -D /admin/postgresql-10.15/data

## (2)修改配置 data/postgresql.conf
$ cat data/postgresql.conf   #主要修改以下几个参数,
hot_standby = on
max_standby_streaming_delay = 30s
wal_receiver_status_interval = 10s
hot_standby_feedback = on

##详细信息如下
下载地址: https://download.csdn.net/download/sun_xuegang/14919929 
文件名: S_postgresql.conf

## (3)修改配置data/recovery.conf
$ cat data/recovery.conf
recovery_target_timeline = 'latest'
standby_mode = on
primary_conninfo = 'host=11.100.5.136 port=5432 user=repl password=repl123'

## 详细内容如下
下载地址: https://download.csdn.net/download/sun_xuegang/14919929 
文件名:recovery.conf

## (3)启动从库
# /etc/init.d/postgresql start

3. 验证主从

## 在主库执行
$ pwd
/admin/postgresql-10.15
$ ./bin/psql 
psql (10.15)
Type "help" for help.

postgres=# \x
Expanded display is on.
postgres=# select * from pg_stat_replication ;

4.建库 建用户 授权

$ psql 
psql (10.15)
Type "help" for help.

postgres=# create user appuser with password 'appuser123';
postgres=# create database cmdb_00;
postgres=# GRANT ALL privileges ON DATABASE cmdb_00 to appuser ;
postgres=# grant all privileges on all tables in schema public to appuser;

## 登录验证
$ psql --username=appuser --password -d cmdb_00
Password for user appuser: 
psql (10.15)
Type "help" for help.

cmdb_00=> \q

4.错误排查
1.代码连接pgsql报错,信息如下
在这里插入图片描述
解决方法: 因为11.100.5.135 不在pgsql的信任列表,将这个ip添加到data/pg_hba.conf即可
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sun_xuegang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值