postgreSQL安装记录

一、安装

1.1 安装rpm文件

yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

此文件安装后会生成/etc/yum.repos.d/pgdg-redhat-all.repo文件。

1.2 安装服务端

yum install -y postgresql12-server

1.3 初始化数据库

1.3.1 使用默认目录

yum安装的postgresql的默认数据目录为/var/lib/pgsql/12/data。

/usr/pgsql-12/bin/postgresql-12-setup initdb

1.3.2 使用自定义目录

如果已经规划好别的数据目录,可以在初始化的时候用-D参数指定数据目录。

# 新建数据目录
mkdir -p /software/postgresql/data

# 授权
chown -R postgres:postgres /software/postgresql/data
# 切换到postgres用户,初始化
su - postgres
-bash-4.2$ /usr/pgsql-12/bin/initdb -D /software/postgresql/data

修改postgresql的system.service文件

vim /usr/lib/systemd/system/postgresql-12.service

切换root用户,修改数据目录
Environment=PGDATA=/software/postgresql/data

#重新加载系统服务
systemctl daemon-reload

1.4 设置启动数据库并设置数据库服务开机启动

systemctl enable postgresql-12
systemctl start postgresql-12

PostgresSQL安装后会自动在操作系统和数据库中创建postgres用户,无密码。

二、创建数据库

2.1使用postgres用户登录

su - postgres

2.2 登录数据库

默认使用的是数据库postgres用户。

psql

2.3 其他命令

\q #退出
\du #查看权限

三、修改数据库配置允许远程访问

在postgres用户下进行。

vim /var/lib/pgsql/12/data/postgresql.conf

取消listen_addresses = ‘*’ 的注释

vim /var/lib/pgsql/12/data/pg_hba.conf

在IPv4 local connections:下增加一行

host    all             all             0.0.0.0/0               md5

四、安装wal2json插件

4.1安装:

#安装查询
yum install wal2json12
#查询安装的结果
repoquery -ql wal2json10.x86_64

4.2 配置pg使用插件

vim /var/lib/pgsql/12/data/postgresql.conf 
shared_preload_libraries = 'wal2json'
wal_level = logical
max_wal_senders = 20 
max_replication_slots = 20

4.3 新建数据库用户

create user logical_rep replication login encrypted password 'logical_rep';

4.4 插槽创建查询删除

-- 创建槽,不指定解码插件默认用test_decoding
SELECT * FROM pg_create_logical_replication_slot('vilid_logical_slot_wal2json', 'wal2json');
--删除槽
SELECT * FROM pg_drop_replication_slot('vilid_logical_slot_wal2json');
--获取槽改变,同一时刻只有一个客户端能获取槽
SELECT * FROM pg_logical_slot_get_changes('vilid_logical_slot', NULL, NULL);
--查询所有槽
SELECT * FROM pg_replication_slots;

4.5 内网安装

内网环境下执行yum install wal2json12,会提示如下错误信息:

No more mirrors to try.
https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-7-x86_64/repodata/repomd.xml: [Errno 14] curl#6 - “Could not resolve host: download.postgresql.org; Unknown error”

解决方案1:

4.5.1 下载yum源到本地
wget https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-7-x86_64 \
-R \
--no-check-certificate \

然后复制到服务器上,搭建本地yum源后再安装。
本地yum源搭建:https://blog.csdn.net/wulei_123456789/article/details/121772550

4.5.2 下载rpm安装包到本地
yum install yum-utils
yumdownloader --resolve --destdir=/home/wal2json wal2json12

将下载的文件复制到服务器上

yum install -y wal2json12-2.3-2.rhel7.x86_64.rpm

链接: wal2json插件安装
链接: postgreSQL安装
链接: yum仓库搭建
链接: wget下载yun仓库文件
链接: 获取wal2json安装包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值