postgresql数据库安装部署搭建主从节点的详细过程(业务库)

时间:2021-05-23

操作系统
64位CentOS 7
数据库搭建

一 业务数据库搭建

1. 安装 yum源(服务器可访问互联网时用)

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

2. 安装客户端

yum install postgresql11 –y

3. 安装服务端

yum install postgresql11-server -y

4. 初始化数据库

使用yum安装后,会在系统中创建一个postgres的无密码用户。在主节点服务器切换到此用户,然后创建一个数据目录,该目录将存放所有的配置文件、数据库文件和日志文件。

root # mkdir -p /u01/apps/pgsql/dataroot # chown -R postgres:postgres /u01/apps/pgsql/

PostgreSQL的安装目录默认存放在/usr/pgsql-11,使用下面的命令初始化数据库目录:
使用postgres用户执行:录
我放在

/usr/pgsql-11/bin/initdb -D 【数据目录全路径】

5. 修改服务启动脚本

使用root用户修改/usr/lib/systemd/system/postgresql-11.service文件,将其中的PGDATA修改为新的数据目录

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

6. 修改数据库配置

使用postgres用户进入自行创建的数据目录,修改 postgresql.conf 文件:
必须要修改listen_addresses、port、max_connections、log_timezone、timezone、datestyle

修改数据目录下的 pg_hda.conf 文件,添加允许连接到本数据库的地址:

7. 开启防火墙端口

firewall-cmd --add-port=5432/tcp --permanentfirewall-cmd --reload

8. 启动数据库服务

启动服务:systemctl start postgresql-11
停止服务:systemctl stop postgresql-11
重启服务:systemctl restart postgresql-11

9. 修改数据库postgres用户密码

修改数据库postgres用户密码,使用系统的postgres用户进入psql,执行以下命令:

[root]# su - postgres上一次登录:二 12月 29 13:35:56 CST 2020pts/0 上-bash-4.2$ psqlpsql (11.5)输入 "help" 来获取帮助信息. postgres=# ALTER USER postgres ENCRYPTED PASSWORD '【密码】';

**

二 主从热备配置

**

1. 创建热备用户

启动数据库服务,切换至操作系统的postgres用户,运行psql
在psql命令行中运行下面的命令创建热备用户,注意用户名只能是小写字母:

CREATE USER 【用户名】 REPLICATION LOGIN CONNECTION LIMIT 3 ENCRYPTED PASSWORD '【密码】';

2. 进入自行创建的数据目录,修改 postgresql.conf 文件:

除 之前 所做的修改外,还需要修改wal_level、max_wal_senders、wal_keep_segments、hot_standby:


3. 修改数据目录下的 pg_hda.conf 文件

需要添加replication的连接配置,注意此处应限制为特定机器的连接,该配置的第三列配置为之前创建的热备用户

4. 重启主服务器的数据库服务

在从服务器上安装PostgreSQL,仅需要创建数据目录,不需要初始化数据库,使用下面的命令将主服务的数据文件同步至从服务器:

/usr/pgsql-11/bin/pg_basebackup -h 【主服务器地址】 -p 【主服务器端口】 -D 【从服务器数据目录】 -P -U 【主服务器热备用户】

在从服务器上修改postgresql.conf,修改port为从机的端口(5433)
在从服务器的数据目录下创建一个recovery.conf文件,内容如下:

standby_mode = 'on'primary_conninfo = 'host=【主服务器地址】 port=5432 user=【主服务器热备用户】 password=【主服务器热备用户密码】'trigger_file = '/tmp/pgsql_master'

启动从服务器的数据库服务

5. 在主服务器和从服务器上检查运行是否正常

主服务器:

从服务器:

使用postgres创建主服务器,在psql下运行下列命令:
postgres=# \x on
postgres=# select * from pg_stat_activity where usename = ‘【热备用户名】';
若显示以下内容,说明已经成功搭建:

**

三 安装插件

**
安装所需的插件

安装PostGIS和pgAgent

yum install postgis25_11 -yyum install pgagent_11 -y

切换到postgres用户,运行psql进入postgresql客户端,在postgres数据库中运行以下命令:

Create extension pgagent;

在postgresql客户端中运行以下命令创建数据库cs2:

Create database cs2;

在cs2数据库中创建数据库扩展

Create extension postgis;Create extension "uuid-ossp";Create extension "postgres_fdw"

使用root用户启动pgagent服务:

systemctl start pgagent_11systemctl enable pgagent_11

主从的postgresql数据库配置到这里就结束了 下次再说 postgresql数据库转换成 timescaledb 时序库

到此这篇关于postgresql数据库安装部署搭建主从节点的详细过程(业务库)的文章就介绍到这了,更多相关postgresql数据库安装部署内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章