简单了解pgpool
创始人
2024-06-03 09:49:56
0

简单了解pgpool

文章目录

  • 简单了解pgpool
  • PGPOOL-II特点
  • PGPOOL 常用命令
      • pcp_recovery_node
      • pcp_promote_node
      • pcp_detach_node
      • pcp_attach_node
      • pcp_node_count
      • pcp_node_info
      • pcp_pool_status
      • pcp_proc_count
      • pcp_proc_info
      • pcp_stop_pgpool

在这里插入图片描述

PGPOOL-II特点

1.连接池

pgpool-II保存已经连接到服务器的连接,并在使用相同参数(例如:用户名,数据库) 连接进来时重用它们。它减少了连接开销,并增加了系统的总体吞吐量

2.故障切换

如果其中一台数据库服务器出现故障或无法访问,则Pgpool-II会将其分离,并将继续使用其余的数据库服务器进行操作。

3.复制

pgpool-II可以管理多个PostgreSQL 服务器。激活复制功能可以在两个或多个PostgreSQL群集上创建实时备份,如果其中一台节点失效,服务可以不被中断继续运行。

4.负载均衡

当数据运行在复制模式或主备模式下,pgpool能够将查询语句分散到集群的各个数据库中

5.在线还原

Pgpool-II可以通过执行一个命今来执行数据库节点的联机恢复。

6.限制超过限度的连接

PostgreSQL会限制当前的最大连接数,当到达这个数量时,新的连接将被拒绝。

1.3 工作模式

1.原始模式

这种模式ppoo1不负责后端数据库数据同步,只实现一个故障切换功能,数据库的数据同步由用户负责,这种模式不支持负载均衡。

2.主备模式

使用其他软件完成数据的数据复制,

如slony或流复制,中间件层使用

PgPool-II式,Pgpool-II提供高可用和连接池的功能。

3.连接池模式

在此模式下,除了原始模式的功能外,还实现连接池功能。

4.复制模式

这种模式下pgpool负责后端数据库数据同步,pepool节点上的写操作需等待所有后端数据库将数据写入后才向客户端返回成功,是强同步复制方式,这种模式支持负载均衡。

1.5 watchdog 作用

和pgpool后端postgresql数据库节点以及远程pgpool节点进行通讯。
对远程pgpool节点是否存活进行检查
当watchdog子进程启动时,对本地pgpool的配置和远程pgpool的配置参数进行检查,并且输出本地和远程pgpool不一致的参数。
当pgpool主节点宕机时,Watchdog集群将选举出新的Watchdog主节点。
当pgpool备节点激活成主节点时,Watchdog负责将vvip移植到新的pgpool节点

PGPOOL 常用命令

pcp_recovery_node

执行在线恢复

pcp_recovery_node -v -d -h 10.10.3.100 -p 9898 -U postgres -n 1

[root@pg1 pgpool-II]# pcp_recovery_node --help
pcp_recovery_node - recover a node
Usage:
pcp_recovery_node [OPTION...] [node-id]
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-n, --node-id=NODEID   ID of a backend node-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_promote_node

从 pgpool 提升一个节点

pcp_promote_node -v -d -h 192.168.56.100 -p 9898 -U pgpool -n 1

[root@pg1 pgpool-II]# pcp_promote_node --help
pcp_promote_node - promote a node as new main from pgpool-II
Usage:
pcp_promote_node [OPTION...] [node-id]
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-n, --node-id=NODEID   ID of a backend node-g, --gracefully       promote gracefully (optional)-s, --switchover       switchover primary to specified node (optional)-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_detach_node

从 pgpool 分离一个节点

pcp_detach_node -n 1 -U pgpool

[root@pg1 pgpool-II]# pcp_detach_node --help
pcp_detach_node - detach a node from pgpool-II
Usage:
pcp_detach_node [OPTION...] [node-id]
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-n, --node-id=NODEID   ID of a backend node-g, --gracefully       promote gracefully (optional)-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_attach_node

给 pgpool 关联一个节点

pcp_attach_node -v -d -n 1 -U pgpool

执行 pcp_attach_node 命令后,用 show pool_nodes 查看节点时会看到 status=waiting。此时需要退出所有的连接,再登录时就是 up 了。

[root@pg1 pgpool-II]# pcp_attach_node --help
pcp_attach_node - attach a node from pgpool-II
Usage:
pcp_attach_node [OPTION...] [node-id]
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-n, --node-id=NODEID   ID of a backend node-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_node_count

获取 pgpool 节点数量

pcp_node_count -v -d -U pgpool

[root@pg1 pgpool-II]# pcp_node_count --help
pcp_node_count - display the total number of nodes under pgpool-II's control
Usage:
pcp_node_count [OPTION...] 
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_node_info

获取 pgpool 节点信息

pcp_node_info -v -d -n 0 -U pgpool

[root@pg1 pgpool-II]# pcp_node_info --help
pcp_node_info - display a pgpool-II node's information
Usage:
pcp_node_info [OPTION...] 
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-n, --node-id=NODEID   ID of a backend node-a, --all              display all backend nodes information-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_pool_status

获取 pgpool 的连接池状态

pcp_pool_status -v -d -U pgpool

[root@pg1 pgpool-II]# pcp_pool_status --help
pcp_pool_status - display pgpool configuration and status
Usage:
pcp_pool_status [OPTION...] 
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_proc_count

获取 pgpool 进程列表

pcp_proc_count -v -d -U pgpool

[root@pg12 pgpool-II]# pcp_proc_count --help
pcp_proc_count - display the list of pgpool-II child process PIDs
Usage:
pcp_proc_count [OPTION...] 
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_proc_info

获取 pgpool 进程信息

pcp_proc_info -v -d -U pgpool

[root@pg12 pgpool-II]# pcp_proc_info --help
pcp_proc_info - display a pgpool-II child process' information
Usage:
pcp_proc_info [OPTION...] [process-id]
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-P, --process-id=PID   PID of the child process to get information for (optional)-a, --all              display all child processes and their available connection slots-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

pcp_stop_pgpool

停止 pgpool

pcp_stop_pgpool -v -d -U pgpool

[root@pg12 pgpool-II]# pcp_stop_pgpool --help
pcp_stop_pgpool - terminate pgpool-II
Usage:
pcp_stop_pgpool [OPTION...] 
Options:-U, --username=NAME    username for PCP authentication-h, --host=HOSTNAME    pgpool-II host-p, --port=PORT        PCP port number-w, --no-password      never prompt for password-W, --password         force password prompt (should happen automatically)-m, --mode=MODE        MODE can be "smart", "fast", or "immediate"-s, --scope=SCOPE      SCOPE can be "cluster", or "local"cluster scope do operations on all Pgpool-II nodespart of the watchdog cluster-d, --debug            enable debug message (optional)-v, --verbose          output verbose messages-?, --help             print this help

相关内容

热门资讯

小学课文叶公好龙的意思是什么 小学课文叶公好龙的意思是什么叶公好龙是一句成语,讲述了叶公爱龙成癖,被天上的真龙知道后,便从天上下降...
完美世界前传图一图二图三的问题... 完美世界前传图一图二图三的问题?我是电二龙现的,101魔尊,图我都开完了,图一可进 千年前天泪之城图...
声开头的四字成语大全 声开头的四字成语大全声开头的四字成语大全 :声色俱厉、声如洪钟、声泪俱下、声情并茂、声东击西、声嘶力...
网络时代消费者心理特征和行为特... 网络时代消费者心理特征和行为特征是怎样的由于它能够提供丰富的商品信息,突破时空的限制,具有低廉的价格...
人生如梦,后面一句是什么 人生如梦,后面一句是什么人生如梦 一樽还酹江月人生如梦,需及时醒来,面对现实一樽还酹江月
求青梅竹马的小说 求青梅竹马的小说总是推的我都看过,多推点吧《夏有乔木,雅望天堂》感人死呢!!!!玄幻小说中有很多
想你第15集里面尹恩惠用的彩笔... 想你第15集里面尹恩惠用的彩笔是什么牌子的?这是马克笔 不管什么牌子效果都一样、和普通彩笔不同的就是...
焉栩嘉被痛斥劈腿背叛,情感失格... 焉栩嘉被痛斥劈腿背叛,情感失格的偶像算劣迹艺人吗?我认为情感失格的偶像应该就算是劣迹艺人人,因为他们...
求异界类似 {异界逍遥公}!和... 求异界类似 {异界逍遥公}!和幻神这样的! 或都市类的像 {龙啸九天-人界风云篇}!!主角蓝玉!我来...
我是从教师转行到财产保险公司做... 我是从教师转行到财产保险公司做保险营销员的,是个到公司快一年的新人,现在急求一份年终总结啊?manm...
改写人生是什么意思? 改写人生是什么意思?就是完全打破以往的人生规划,迎接一个不一样的人生。
找一本主角牙口特别好的小说? 找一本主角牙口特别好的小说?完美世界吗?
无双无对无法比打一数字? 无双无对无法比打一数字?无双无对无法比的数字是0。因为两个O仍是O。
一切都为了生活,那生活又为了什... 一切都为了生活,那生活又为了什么?生活就是你的一切,生活?生存活着!你的所有的努力只是为了活着,为了...
喜欢安静的人是什么性格 喜欢安静的人是什么性格喜欢安静的人通常本身也是比较文静的人,这类人的性格会属于内敛,内向型的。内向、...
哪个播放器能看《一生一世》 哪个播放器能看《一生一世》不好看,暴风影音就有哇如果有关视频的格式是播放器支持的都能看或播放
心里莫名的悸动是什么? 心里莫名的悸动是什么?心里老是莫名的悸动 搞不懂耶失眠、健忘、眩晕、耳鸣等并存,凡各种原因引起心脏搏...
怎样训犬 怎样训犬受训犬是指接受训练的犬。受训犬一般要求除符合本品种的特征外,还应注意:(1)体形外貌。机体各...
天为什么会黑? 天为什么会黑?这是因为地球自转造成的日月更替。地球绕太阳是公转,而在公转的同时地球也在自转。当地球自...
为什么前男友屏蔽朋友圈不让我看... 为什么前男友屏蔽朋友圈不让我看,但是又不删除我?为什么会这样啊都已经让对方变成前任啦!还纠结这些干嘛...