首页 > 数据库 >postgresql实例结构

postgresql实例结构

时间:2023-12-23 14:12:26浏览次数:46  
标签:文件 postgresql postgres 实例 参数 conf 进程 结构

postgresql实例结构

postgresql实例简介

  1. 用来访问postgresql数据库
  2. 一个实例对应一个数据库集簇
  3. 由内存和后台进程组成

postgresql初始化参数文件

文件中有两种类型的参数

1. 显式:在文件中对参数进行设置
2. 隐式:文件中没有设置,使用postgres默认值

可以存在多个初始化参数文件

静态参数文件:postgresql.conf
- 说明:
	1. 该文件为文本文件
	2. 需要使用操作系统vi编辑器手动修改
	3. 更改将在下次启动时生效
	4. 仅在实例启动期间读取
	5. 默认位置为$PGDATA

动态参数文件:postgresql.auto.conf
说明:
1. 该文件为文本文件,由postgres服务器维护
2. 支持用文本编辑器修改,但不推荐
3. alert system命令修改的参数保存在该文件中
4. 能够在关闭和启动期间持续进行更改
5. 可以实现自我调整参数值
6. 默认位置为$PGDATA

参数生效条件:
1. sighup:表示需要超级管理员修改,reload就能够生效
2. superuser:表示需要超级管理员修改,可以为普通用户、数据库或者超级管理员自己修改
3. postmaster:表示需要超级管理员修改,需要重启才能够生效
4. user:表示普通用户可以修改该参数,立即生效

可选参数文件:postgresql.conf.user
需要在postgresql.conf中指定后才可以使用

文件读取顺序

postgresql.conf -> postgresql.auto.conf -> postgresql.conf.user

postgresql内存结构

Local memory area

本地内存区域,由每个后端进程分配给用户使用

work_mem:工作区域

排序、distinct操作、多表连接时需要使用

maintenance_work_mem:维护工作区域

在VACUUM,REINDEX时需要使用

temp_buffers:临时缓存区域

用于存储临时表

Shared memory area

共享内存区域,由postgresql服务器的所有进程使用

shared buffer pool:共享缓存池

用于存放从数据库中读取的数据块和sql语句执行计划

WAL buffer:日志记录缓冲区

commit log:记录事务状态

postgresql后台进程

postgres server process

postgres服务器进程是与数据库集群管理相关的所有进程的父进程,早期版本被称为"postmaster"

  • pg_ctl使用程序启动该进程,然后派生出各个后台进程,同时分配共享内存区域
  • 一个postgres服务器进程侦听一个网络端口,默认端口为5432

backend process

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

postgresql允许多个客户端同时连接:配置参数max_connections可以控制客户端的最大连接数

background writer:后台写进程
 触发条件
 1.脏数据缓存达到阈值
 2.空闲缓存不足
 3.超时
checkpointer:检查点进程
 触发条件
 1.写入脏数据缓存
 2.将检查点信息更新到日志文件
 3.将检查点信息更新到控制文件
 4.对数据库热备时
autovacuum launcher:系统自动清理进程
WAL writer:预写式日志写进程
backend process会将请求先写入缓冲区,再写入日志文件
 触发条件
 1.提交事务时
 2.缓冲区空间不足
 3.超时
statistics collector:统计数据收集进程
logging collector(logger):日志收集进程
archiver:归档进程(只有在配置归档模式后才会有)

background processes

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

replication associated processes

在与复制相关联的进程中,它们执行流式复制

标签:文件,postgresql,postgres,实例,参数,conf,进程,结构
From: https://www.cnblogs.com/mr-wushuang/p/17923075.html

相关文章

  • Tekton gitlab CI/CD 实例
    环境介绍gitlab地址gitlab:http://192.168.174.108:8080/root/spring-boot-helloWorldTask说明1.git-clone:克隆项目的源代码2.build-to-package:代码测试、构建和打包3.generate-build-id:生成BuildID4.image-build-and-push:镜像构建(和推送)5.deploy-to-cluster:将新......
  • 简单讲讲网络结构
    FCN(FullyConvolutionalNetwork),PSPNet(PyramidSceneParsingNetwork)和DeepLab-v3是在计算机视觉领域中广泛应用的三种网络结构。它们在语义分割任务中具有出色的性能,并在许多实际应用中取得了显著的成果。首先,我们来了解一下FCN。FCN是一种全卷积网络,最初被提出用于图像语义分......
  • PostgreSQL. 异常“more than one owned sequence found”的解决方案
    一、异常信息描述执行数据库操作时,主键id没有自增,且报“morethanoneownedsequencefound”的异常,造成数据没有insert进去,下面是详细的异常信息:java.lang.reflect.InvocationTargetExceptionatsun.reflect.GeneratedMethodAccessor613.invoke(UnknownSource)ats......
  • 循环结构习题
    3.循环结构-习题1.for循环求和【题目描述】利用for循环。计算输出1+2+3+...+n的和。【输入】输入n。【输出】如题述,之和。【输入样例】10【输出样例】55【提示】【数据规模及约定】对于100%的数据,1≤n≤100。{intn,j=0;cin>>n;for(inti=1;i<=n;i++){ j......
  • 【洛谷 P1781】宇宙总统 题解(高精度+结构体排序)
    宇宙总统题目描述地球历公元6036年,全宇宙准备竞选一个最贤能的人当总统,共有个非凡拔尖的人竞选总统,现在票数已经统计完毕,请你算出谁能够当上总统。输入格式第一行为一个整数,代表竞选总统的人数。接下来有行,分别为第一个候选人到第个候选人的票数。输出格式共两行,第一行是......
  • 2-1张量数据结构
    0.配置Pytorch的基本数据结构是张量Tensor。张量及多维数组。Pytorch的张量和numpy中的array很类似。本节我们主要介绍张量的数据类型、张量的维度、张量的尺寸、张量和numpy数组等基本概念。importtorchprint('torch.__version__='+torch.__version__)"""torch.__ve......
  • [2024深圳市考][计算机素质测试考纲](二)算法和数据结构
    前言因篇幅有限,本文仅对考纲中的考点做基本介绍。更详细的内容请自行学习:【双语字幕】CS61B数据结构|整合版|UCBDataStructureSpring2021【中英双字】普林斯顿大学-算法分析AlgorithmAnalysis2015COS423一、基本概念二、数组三、链表四、栈和队列五、递......
  • idea在项目中创建包时,修改好几次都不是树形的包结构解决方法
    一:概述在使用idea项目中创建包时,创建的时候,怎么创建都是只有一个包,当里面有一个类时,才可以进行创建下面的包,这样很麻烦。弄了半天终于解决了。二:具体解决步骤具体问题截图:<1>点击右侧的小齿轮设置   <2>点击之后会出来以下的界面  <3>接下来点击TreeAppearance<4>点击完......
  • 对树形结构过滤处理(过滤掉选中文件夹以及子级数据)
    点击查看代码/***移动文件夹(不能移动当前文件夹以及子文件夹)*@paramtree树形结构*@paramcondition过滤单条数据*@returns*/exportfunctionexcludeNodeAndChildren(tree:any,condition:any){if(!Array.isArray(tree)||typeofcondition!=='obj......
  • HarmonyOS 初体验 (七)了解包结构
    上一篇HarmonyOS初体验(五)了解UI、应用模型应用结构结构图Module描述:一个应用包含一个或者多个Module,可以在DevEcoStudio工程中创建一个或者多个Module。Module是HarmonyOS应用/服务的基本功能单元,包含了源代码、资源文件、第三方库及应用/服务配置文件,每一个Module都......