Chinaunix首页 | 论坛 | 博客
  • 博客访问: 667131
  • 博文数量: 487
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4936
  • 用 户 组: 普通用户
  • 注册时间: 2018-07-05 13:59
个人简介

ocp考试资料群:569933648 验证码:ocp OCP 12c 19c考试题库解析与资料群:钉钉群号:35277291

文章分类

全部博文(487)

文章存档

2024年(2)

2023年(37)

2021年(151)

2020年(37)

2019年(222)

2018年(38)

我的朋友

分类: Mysql/postgreSQL

2023-02-27 16:00:53


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

Part 4:PostgreSQL实例结构

内容1:PostgreSQL实例简介

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

内容3:PostgreSQL内存结构

内容4:PostgreSQL后台进程


1.1、PostgreSQL实例简介

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参数文件文本文件

使用操作系统编辑器修改

手动修改

更改将在下次启动时生效

仅在实例启动期间读取



2.2、postgresql.auto.conf参数文件

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

由Postgres服务器维护

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

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

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

可以实现自我调整参数值


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

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”。

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

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


4.2、Backend Processes

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

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



Background Processes






相关阅读:

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

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

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

以上就是Part 4 - PostgreSQL实例结构 的内容,大家练习的时候如果遇到困难,可以进群一起探讨,钉钉交流群:35,82,24,60

阅读(350) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~