Wal
  • 2024-10-28深度解读GaussDB逻辑解码技术原理
    本文分享自华为云社区《【GaussTech技术专栏】GaussDB逻辑解码技术原理》,作者:GaussDB数据库。1.背景随着国内各大行业数字化改造步伐的加快,异构数据库数据同步的需求场景越来越多。异构数据库同步,即将不同类型、不同结构的数据库之间的数据进行同步处理,以确保数据在不同数据库
  • 2024-10-27PostgreSQL 16逻辑复制改进 (译)
    原文地址:https://www.pgedge.com/blog/postgresql-16-logical-replication-improvements-in-action 我之前简要介绍了PostgreSQL中的复制方法,并概述了PostgreSQL16中逻辑复制的一些关键特性。在这篇博客中,我将深入探讨逻辑复制的几个性能特性,展示这些特性在实际操作中的步骤,并
  • 2024-09-29PostgreSQL同步流复制与synchronous_standby_names设置
    PostgreSQL的流复制,从整体上看,可以粗分为同步与异步两种模式,其中涉及的主要参数包括synchronous_commit和synchronous_standby_names主节点synchronous_commit参数设置synchronous_commit事务提交模式,类似于MySQL的innodb_flush_log_at_trx_commit参数,对应着事务提交后返回给客
  • 2024-09-23PGSQL-备份和恢复-增量备份-开启wal归档、并设置定时清理备份之后的wal文件
      一、增量备份定期对数据库做基础备份,再配合WAL的归档日志,可实现再较短时间将数据库恢复 开启WAL归档创建归档目录[root@s101/var/lib/pgsql/13]#lsarchive_walsbackupsscriptswal归档记录 touch pg_archive_logs[root@s101/var/lib/pgsql/13/archive_wals
  • 2024-09-21MySQL数据库日志之WAL机制和Buffer Pool
    WAL机制(Write-Ahead-Logging)先磁盘之前先写入日志文件到磁盘,也就是redolog中的后台系统线程,每1秒进行一次对redologBuffer刷盘操作。标准的UndoLog这一步是靠WAL实现的,也就是要求Undo写入先于数据落盘。对于,undolog的WAL机制,只是相对于提交事务后的刷盘和
  • 2024-09-16PostgreSQL的walsender和walreceiver进程介绍
    PostgreSQL的walsender和walreceiver进程介绍在PostgreSQL中,WAL(Write-AheadLogging)是一种用于确保数据库事务日志安全可靠的机制。WAL是PostgreSQL进行数据库恢复、复制等操作的基础。walsender和walreceiver是PostgreSQL内部两个非常重要的进程,它们负责主
  • 2024-09-15深入理解 Write-Ahead Logging (WAL) 及其应用
    在讨论数据库原理的时候,我们经常会听到一种技术-Write-AheadLogging(WAL),它保证了数据的持久性和一致性。WAL的基本思想非常简单,但它的应用范围非常广泛,从数据库到分布式系统,再到各种现代应用的开发中,都能看到它的影子。本文将深入剖析WAL的基本机制,并探讨其在不同应用场
  • 2024-09-08postgres 文件结构和记忆(更新中)
    [postgres@pg1data]$lltotal8256drwx------.8postgrespostgres84Jan22024base-rw-------.1postgrespostgres33Sep808:51current_logfilesdrwx------.2postgrespostgres4096Sep808:52global-rw-------.1postgrespostgres
  • 2024-09-03goleveldb的原理简述(基于golang的goleveldb库)
    简介goleveldb是基于LSM-Tree实现的针对处理写多读少场景的解决方案,通常用于构建写多读少的存储引擎整体架构图如下基于用户接口层简述原理吧Get,按key查询数据,首先区内存中的数据,如果内存中没有则依次从硬盘中的ldb文件中取得数据。Put,按key更新数据,首先写内存数据,如
  • 2024-08-30PG复制槽的原理
    什么是PG复制槽?PG复制槽用于记录主备流复制的状态,主要目的是防止wal日志被过早的删除,导致备库流复制中断。复制槽是有状态的,能够持久化到磁盘上,允许宕机、重启场景下进行恢复。在有复制槽的场景下,即使备库关闭很长时间,主库也会为其保留足够的wal日志,直到备库恢复接收完这
  • 2024-08-29MySQL WAL机制详解
    目录:是什么undologRedoLog 与BinlogRedolog三种状态redolog 的持久化Binlog三种格式三种状态binlog 的持久化两者的联系状态Crash-Safe 能力三步提交的参数配置组提交优化" 三步提交"三步提交过程总结三个日志的比较(undo、redo、bin) 
  • 2024-08-11PostgreSQL的WAL日志详解
    PostgreSQL的WAL日志详解1.WAL日志介绍1.1WAL介绍wal日志即writeaheadlog预写式日志,简称wal日志。wal日志可以说是PostgreSQL中十分重要的部分,相当于oracle中的redo日志。当数据库中数据发生变更时:change发生时:先要将变更后内容计入walbuffer中,再将变更后的数据写入data
  • 2024-08-11PostgreSQL-连续归档和时间点恢复
    PostgreSQL-连续归档和时间点恢复(PITR)PostgreSQL始终在群集数据目录的pg_wal/子目录中维护一个预写日志(WAL)。该日志记录对数据库数据文件所做的每一项更改。此日志主要用于崩溃安全性:如果系统崩溃,可以通过“重放”自上次检查点以来所做的日志条目来将数据库恢复到一致性
  • 2024-08-11PostgreSQL的一主一从集群搭建部署
    1.PostgreSQL的一主一从集群搭建部署1.目标​ 掌握Postgresql数据库主从部署搭建配置2.脉络部署规划PostgreSQL单节点安装PostgreSQL主从部署配置主从同步验证3.部署搭建3.1基础准备1.1创建两台虚拟机虚拟机名IPhostname主从划分test11192.168.198
  • 2024-07-26KingbaseES 数据库WAL日志暴增问题处理
    故障现象:kingbase数据库容量不足100G,业务繁忙程度小,但是每天产生112283个WAL日志,每个日志16M,生成约1.7T的归档日志分析过程:思路一:从数据库日志入手,分析过程如下:sys_log日志:2024-06-0223:54:05.497CST3130361b580b0.7a47182242021-12-1212
  • 2024-07-26KingbaseES 更改 WAL 日志文件大小
    一、引言WAL日志的目的:WAL(Write-AheadLogging)是KingbaseES数据库中的一个关键特性,用于确保在数据库崩溃或故障后能够恢复数据。WAL日志记录了数据库的所有更改,这样即使数据库突然宕机,也可以从WAL文件中恢复数据到一致性状态。命令的功能:sys_resetwal命令用于重置WAL日志,它可以
  • 2024-07-10PostgreSQL逻辑复制搭建
    复制作为一种高可用/数据同步方案,在每一种数据库中都有实现,可以借助复制功能实现数据库的高可用或者数据同步/备份方案。复制的分类整体上看,复制可以分为物理复制和逻辑复制,对于物理复制或者逻辑复制,没有所谓的优劣,只有各自的适应场景。所谓的物理复制,也即复制数据库的redo物理
  • 2024-07-07基于 LSN 的 PostgreSQL 数据管理与恢复
    在数据管理和恢复中,LSN(LogSequenceNumber)起着至关重要的作用。本文将深入探讨LSN在PITR(时间点恢复)、流复制、日志记录以及数据一致性中的具体应用,并详细介绍如何基于LSN进行时间点恢复。1.基本概念1.1LSNLSN(LogSequenceNumber,日志序列号)是PostgreSQL中用于
  • 2024-06-22PostgreSQL的存储结构介绍
    PostgreSQL的存储结构介绍PostgreSQL是一个先进的开源关系型数据库管理系统,其存储结构设计非常复杂且高效。了解其存储结构有助于数据库管理员和开发人员更好地优化数据库的性能、设计数据模型以及进行故障排除。以下是PostgreSQL存储结构的详细概述。1.数据文件结构
  • 2024-06-14SQlite
    #PRAGMA命令https://www.sqlite.org/pragma.html#pragma_journal_modehttps://www.w3cschool.cn/sqlite/sqlite-pragma.html##查询锁模式PRAGMAlocking_mode;PRAGMAlocking_mode=NORMAL|EXCLUSIVE(排它模式)此编译指示设置或查询数据库连接锁定模式。锁定模式为
  • 2024-06-03Hbase 面试题(五)
    1.简述什么是WAL(WriteAheadLog)预写日志?WAL(WriteAheadLog),即预写日志,是HBase中用于保证数据持久性和一致性的关键机制。以下是WAL的简要概述:目的:WAL的主要目的是在数据实际写入到MemStore之前,先将其记录到一个日志中。这样即使在系统崩溃或故障的情况下,也能够从日
  • 2024-05-30可靠性和预写日志
    可靠性可靠性是任何严肃的数据库系统的重要属性,而PostgreSQL尽一切可能保证可靠操作。可靠操作的一个方面是,已提交事务记录的所有数据都应存储在非易失性区域中,该区域不会受到断电、操作系统故障和硬件故障的影响(当然,非易失性区域本身的故障除外)。成功地将数据写入计算机的永久存
  • 2024-05-22pg调整wal_segment_size(默认是16MB)大小
    环境:OS:Centos7DB:pg14pg默认的wal_segment_size是16MB,下面可以通过如下命令修改 1.关闭数据库systemctlstoppostgresql-14 2.修改wal默认大小[root@dsc1bin]#/usr/pgsql-14/bin/pg_resetwal--wal-segsize=64-D/opt/pg14/datapg_resetwal:error:cannotbeexec
  • 2024-05-16pgsql-cdc
    1、CDC日志开启SHOWwal_level;ALTER SYSTEM SET wal_level = 'logical';wal_level是PostgreSQL中的一个参数,用于控制WAL(Write-AheadLogging)日志的生成级别。WAL是PostgreSQL中的一种持久性技术,用于确保数据库的持久性和一致性。在PostgreSQL中,wal_level参数有
  • 2024-05-13openGauss 配置设置
    配置设置发布订阅要求设置一些配置选项。在发布者端,wal_level必须被设置为logical,而max_replication_slots中设置的值必须至少是预期要连接的订阅数加上保留给表同步的连接数。发布端参数max_wal_senders应满足:max_wal_senders>=max_replication_slots+同时连接的物理复制槽