当前位置: fuhua-pet->优技培训 > 从小白到专家 PostgreSQL技术大讲堂 - Part 4:PG实例结构

从小白到专家 PostgreSQL技术大讲堂 - Part 4:PG实例结构

2022-12-30作者:fh-soft来源:www.fh-soft.com

PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。

Part 3:PG实例结构

内容1:PostgreSQL实例简介

内容2:PostgreSQL初始化参数文件

内容3:PostgreSQL内存结构

内容4:PostgreSQL后台进程


1.1、PG实例简介

PostgreSQL实例:用来访问PostgreSQL数据库

一个实例对应一个数据库集簇

由内存和后台进程组成


1.2、建立一个连接和创建一个会话

连接到一个PostgreSQL实例建立一个用户连接

创建一个会话


2、初始化参数文件

两种类型的参数显式:在文件中对参数进行设置

隐式:文件中没有设置,使用Postgres默认值

可以存在多个初始化参数文件静态参数文件:postgresql.conf

动态参数文件:postgresql.auto.conf

可选参数文件:postgresql.conf.user

读取顺序postgresql.conf

postgresql.auto.conf

postgresql.conf.user


2.1、postgresql.conf参数文件

postgresql.conf参数文件文本文件

使用操作系统编辑器修改

手动修改

更改将在下次启动时生效

仅在实例启动期间读取

默认位置为$PGDATA


2.2、postgresql.auto.conf参数文件

postgresql.auto.conf参数文件文本文件

由Postgres服务器维护

支持用文本编辑器修改(不推荐)

ALTER SYSTEM命令修改的参数保存在该文件

能够在关闭和启动期间持续进行更改

可以实现自我调整参数值

默认位置为$PGDATA

改变一个参数的值,会在文件中自动添加参数

ALTER SYSTEM SET archive_mode = on;

恢复一个参数默认值,会在文件中自动删除参数

ALTER SYSTEM RESET archive_mode;


2.3、参数生效条件

参数生效条件 sighup:表示需要超级管理员修改,reload就能够生效。

superuser:表示使用超级管理员可以为普通用户、数据库、或者超级管理员自己修改。(注:有些参数是可以针对用户、数据库、实例)

postmaster:表示需要超级管理员修改,需要重启才能够生效。

user:表示普通用户可以修改该参数值,立即生效。


3、Memory Architecture

PostgreSQL中的内存架构可以分为两大类:Local memory area –由每个后端进程分配给自己使用

Shared memory area –由PostgreSQL服务器的所有进程使用

3.1、Memory Architecture

Local Memory Area:

Shared Memory Area:


4、Process Architecture

PostgreSQL进程结构:

postgres server process :postgres服务器进程是与数据库群集管理相关的所有进程的父进程。

backend process:每个后端进程处理连接的客户端发出的所有查询和语句。

background processes:各种后台进程执行用于数据库管理的每个特性的进程(例如清空和检查点进程)。

replication associated processes:在与复制相关联的进程中,它们执行流式复制。

background worker process-:在版本9.3支持的后台工作进程中,它可以执行用户实现的任何处理。

PostgreSQL进程结构:

4.1、Postgres Server Process

Postgres Server Processpostgres服务器进程是PostgreSQL服务器中所有进程的父进程。早期版本它被称为“postmaster”。

pg_ctl实用程序启动该进程,然后派生出各个后台进程。同时分配共享内存区域。

一个postgres服务器进程侦听一个网络端口,默认端口为5432。


4.2、Backend Processes

Backend Processes后端进程(也称为postgres)由postgres服务器进程启动,并处理一个连接的客户端发出的所有查询。

PostgreSQL允许多个客户端同时连接;配置参数max_connections控制客户端的最大数量。

Background Processes

postgres> pstree -p 9687-+= 00001 root /sbin/launchd\-+- 09687 postgres /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data |--= 09688 postgres postgres: logger process|--= 09690 postgres postgres: checkpointer process |--= 09691 postgres postgres: writer process|--= 09692 postgres postgres: wal writer process|--= 09693 postgres postgres: autovacuum launcher process |--= 09694 postgres postgres: archiver process|--= 09695 postgres postgres: stats collector process|--= 09697 postgres postgres: postgres sampledb 192.168.1.100(54924) idle\--= 09717 postgres postgres: postgres sampledb 192.168.1.100(54964) idle in transaction

相关阅读:

从小白到专家 PG技术大讲堂 - Part 1:PG简介

从小白到专家 PG技术大讲堂 - Part 2:PG源代码安装

从小白到专家 PG技术大讲堂 - Part 3:PG建库与使用

以上就是Part 4 - PG实例结构 的内容,大家练习的时候如果遇到困难,可以进群一起探讨,QQ交流群:752027153   微信交流群:联系客服拉你进微信PG交流群    如果单看文档不太懂,可以加入钉钉群,以后可能会有公开课专门讲解此内容,钉钉交流群:35822460

  • 甲骨文考试机构哪家比较权威
  • PostgreSQL技术大讲堂 - 第47讲:JMETER工具使用
  • PostgreSQL技术大讲堂 - 第48讲:PG高可用实现keepalived
  • 2024-02-02,恭喜CUUG 刘同学通过Oracle考试获得OCP 19c证书
  • OCP认证能不能在家中考试,不去VUE考点考试吗?
  • 恭喜CUUG Guo同学以较高分数通过19c OCM认证考试!
  • 3月30日,工信部人才交流中心PostgreSQL认证考试顺利结束
  • 2024年4月8日,工信人才发布红头文件:PostgreSQL数据库管理人才研修与评测班
  • 恭喜CUUG入选2024年工业和信息化重点领域人才能力评价支撑机构
  • 天津职业技术师范大学《PolarDB开源数据库工作室》授牌仪式顺利完成
  • 温州大学国产开源数据库工作室成功举办PostgreSQL技能培训活动
  • Oracle数据库加入AI功能,Database 23c改名为Database 23ai
  • oracle ocp证书有效期多长时间
  • PostgreSQL技术大讲堂 - 第51讲:老陈与德哥聊一聊数据库调优
  • 5月17日,PolarDB开源数据库沙龙(青岛站)成功举办
  • 有大奖!第13届PostgreSQL中国技术大会:聚焦云端创新,汇聚智慧共享
  • PostgreSQL技术大讲堂 - 第56讲:老陈与德哥聊“数据库孤儿文件”
  • PostgreSQL技术大讲堂 - 第57讲:老陈与德哥聊“数据库安全”
  • PostgreSQL技术大讲堂 - 第58讲:老陈与德哥聊“txid从32位变成64位的影响与调整”
  • 报名啦!第13届PostgreSQL中国技术大会,”聚焦云端创新 汇聚智慧共享“
  • PostgreSQL技术大讲堂 - 第52讲:与德哥背后的男人们聊如何实现自动性能调优
  • 5月16日,开源驱动教育创新研讨会(青岛站)成功举办
  • 汇华学院PG证书来了!工信人才&CUUG PostgreSQL管理员认证!
  • 温州大学PG证书来了!工信人才PostgreSQL管理员认证证书!
  • 7月8日,恭喜CUUG 张同学通过19c OCM认证考试,成绩公布!
  • Oracle OCP证书还有用吗 含金量有多高
  • 腾讯云认证级别名称TCA、TCP、TCE升级为TCCA、TCCP、TCCE
  • 怎么报考腾讯云TDSQL数据库工程师认证(TCCA、TCCP、TCCE)
  • PostgreSQL PG夜话(第20期):数据库老陈、德哥、快立方华总,聊一聊数据库内存管理
  • PostgreSQL从入门到精通教程,这样学习postgres
  • PostgreSQL数据库,为什么会异军突起?
  • PostgreSQL中国技术大会 CUUG获得PostgreSQL数据库认证与培训合作伙伴
  • 不懂就问:什么是PostgreSQL数据库管理员认证
  • 是时候解锁一下“PostgreSQL数据库认证专家”了
  • OCP认证没有含金量了?来看看Oracle OCP 证书的用处!
  • Oracle OCM证书还值得考吗?哪些人需要考OCM
  • Oracle 数据库认证,数据库领域的金字招牌
  • 今天(5月6日),CUUG 赵同学收到19c OCM认证考试证书!
  • 5月25日,温州大学49名学生参加工信人才PostgreSQL认证考试!
  • 5月30日,PG中级证书来了!工信人才PostgreSQL管理员认证证书!
  • 6月1日,汇华学院12名学生参加工信人才PostgreSQL认证考试!
  • PG技术大讲堂 - 第55讲:通义大模型+向量数据库实现AI的外脑
  • PostgreSQL技术大讲堂 - 第53讲:老陈与德哥开讲PostgreSQL 17新特性
  • PostgreSQL技术大讲堂 - 第54讲:如何在上线前精准评估PG SQL性能
  • PolarDB开源社区走进金蝶,开源数据库沙龙成功举办!
  • 阿里云PolarDB再获顶会SIGMOD最佳论文奖
  • 阿里云斩获国际数据库顶会ICDE 2024最佳论文
  • 腾讯云数据库TDSQL荣获深圳市科技进步奖一等奖
  • Oracle OCP认证还值得考吗 考OCP证书需要门槛吗
  • ocm认证考试费用多少钱,Oracle OCM考几科