- 博客(808)
- 资源 (11)
- 收藏
- 关注
原创 GaussDB 内存相关参数及故障诊断
GaussDB采用动态与静态内存结合的管理机制,通过max_process_memory控制总内存,shared_buffers用于缓存热点数据,work_mem和maintenance_work_mem分别管理会话与后台操作内存。合理配置参数可避免排序落盘、内存溢出等问题。effective_cache_size影响优化器决策,建议设为物理内存的25%-50%。需关注内存水位,确保动态内存余量充足,防止OOM。通过监控pg_total_memory_detail等视图可定位内存瓶颈,排查空闲连接
2026-09-23 15:36:51
434
1
原创 GaussDB 流复制核心参数和监控视图
本文系统梳理了GaussDB标准流复制环境的核心参数与监控视图,涵盖主备库关键配置(如wal_level、synchronous_commit、hot_standby等)及监控手段(pg_stat_replication、dbe_perf.global_replication_stat等),重点说明复制延迟评估、复制槽管理与流控机制,适用于GaussDB、PostgreSQL及其衍生数据库,为高可用架构提供实践参考。
2026-09-23 15:14:50
266
原创 GaussDB 集群参数管理(GUC)
GaussDB参数按作用域分为六级:INTERNAL(静态不可改)、POSTMASTER(需重启生效)、SIGHUP(即时生效)、BACKEND(新会话生效)、SUSET(超级用户可调)、USERSET(普通用户临时生效)。通过gs_guc命令可配置文件级修改,set用于重启类参数,reload实现即时生效。SQL语句支持数据库、用户及会话级参数调整,灵活适配运维需求。
2026-09-20 15:24:42
273
原创 GaussDB 系统表与系统视图详解(内网运维版)
本文系统梳理GaussDB集中式集群下核心系统表与视图(如pg_class、pg_attribute、pg_locks、pg_stat_activity等)的元数据结构与实战应用,涵盖数据库、模式、表空间、索引、统计信息及锁管理等关键维度。通过典型SQL示例,实现对大表、无效索引、锁等待、慢查询、连接泄漏等问题的快速定位与排查,为数据库巡检、性能优化与故障诊断提供可复用的运维模板。
2026-09-20 15:22:07
174
原创 GaussDB 集中式架构部署形态与运维指南
GaussDB集中式架构支持一主多备部署,提供多种高可用形态(如1主1备、1主2备、存算分离等),满足不同容灾与成本需求。通过gs_om、cm_ctl、gs_ctl三层次管理工具,实现集群全生命周期运维、高可用自愈及节点级控制,保障RPO=0与秒级切换,适用于生产级关键业务场景。
2026-09-11 15:47:27
479
原创 openGauss从零部署 oGRAC 双节点:多写一致性与 TPCC 线性扩展实测
oGRAC 是 openGauss 的多主架构实现。多个数据库实例由集群统一管理,对外提供实时一致的读写能力。与传统主备架构不同,本实验中的 Node0 和 Node1 都可以承载写事务。因此,验证重点不只是“两个实例能否启动”,还包括三件事:任一节点执行 DDL 或 DML 后,另一节点能否立即观察到结果;两个节点并发修改同一行时,锁和事务语义是否正确;业务连接分散到两个节点后,吞吐能否相对单节点增长。
2026-09-11 15:41:03
247
原创 【GaussDB】GaussDB 组件、节点和AZ故障仲裁与切换流程
<think>好的,用户给了一段关于GaussDB集群故障恢复机制的详细技术文档,要求生成不超过150字的文章摘要。 这篇文章内容很密集,涵盖CN、DN、GTM、CM、节点、AZ等多层级故障场景,每块都有详细的恢复路径和RTO指标,还有一个总结对比表。摘要需要高度浓缩。 核心信息有几个维度:故障恢复依赖路径是逐层递进的,各组件有不同的RTO目标,恢复机制的核心逻辑是“Agent检测→尝试拉起→CM仲裁→备升主”这种模式。
2026-09-04 15:25:47
432
原创 openGauss高可用实战:主备复制+Keepalived实现RTO<10s
生产环境数据库挂了怎么办?openGauss 的主备流式复制 + Keepalived VIP 漂移方案可以做到故障自动切换、RTO < 10 秒。本文详细讲解了主备架构搭建、同步/异步模式选型、Keepalived 配置、脑裂防御、日常切换演练等核心内容。主库同步复制保障零丢失,备库异步灾备;Keepalived自动VIP漂移,故障时秒级切换;采用STONITH防脑裂,半同步降级策略,定期演练验证RTO<10s,并配套延迟监控与应急方案。
2026-09-04 15:19:55
493
原创 GaussDB 内部探秘:进程、目录与端口
最后简单介绍一下 CN 和 DN 的线程,都还是PostgreSQL的那些进程名字。# 查看 CN 的线程...# 查看 DN 的线程...总结,本文通过对GaussDB的进程、目录、端口和线程的逐层分析,分别介绍了CNDNGTMCMETCD等多个组件的运行机制与内部结构,帮助大家从 Linux 操作系统层面建立对GaussDB的整体认识,更加直观地理解各组件之间的关系。转载:实战派K8S&DB公众号。
2026-08-28 15:29:33
408
原创 Docker 部署 openGauss:轻松搭建企业级开源关系型数据库平台
本文介绍了使用Docker快速部署openGauss 5.0.0数据库的方法,重点解决本地开发测试的信创数据库环境搭建问题。通过官方Docker镜像opengauss/opengauss:5.0.0(避免有缺陷的latest标签),配合Docker Compose配置数据卷、环境变量(GS_PASSWORD和LD_LIBRARY_PATH)和5432端口映射,可在本地机器上快速启动数据库服务。文章还介绍了可选Web客户端opengauss-webclient的使用方法(8081端口),但强调其与主库数据隔离
2026-08-20 15:38:05
548
原创 【GaussDB】507内核版本新特性-rowid
GaussDB 5.0.7版本新增的ROWID功能填补了长期缺失,但实现方式存在性能损耗。测试显示,该特性需通过WITH(hasrowid)显式启用,会新增rowno和rowid两个隐藏字段,并自动创建唯一索引。ROWID由5部分BASE64编码组成,其中table_oid和row_no是关键信息。虽然功能测试通过,但插入性能显著下降(1千万行数据插入时间从35秒增至88秒),且存在序列值上限问题。优化器通过改写SQL利用rowno索引加速查询,但分区表场景下仍需改进。总体而言,该特性实现了Oracle R
2026-08-14 16:01:49
256
原创 【GaussDB】507内核新特性-PLSQL字节码(三)
摘要:本文针对GaussDB5.0.7的字节码支持特性进行测试,通过JDBC捕获LOG消息,补充了6个新的BC日志码命中场景(BC053/054/055/061/074/030)。测试发现不支持场景分为"全不支持"(如GOTO语句触发BC030)和"局部treebased"(如DML语句触发BC053但仍支持字节码框架)
2026-08-14 15:46:24
464
原创 【GaussDB】507内核新特性-PLSQL字节码(二)
本文深入探讨了GaussDB 507内核PL/SQL字节码功能的约束条件。作者通过实际测试验证了官方文档中列出的黑白名单限制,发现部分场景实际支持情况与文档描述存在差异。测试覆盖了匿名块、触发器、集合函数、子程序、自治事务、RECORD类型等20余项约束条件,并记录了相关字节码日志。结果显示:部分限制场景(如SUBTYPE类型、跨PACKAGE游标)实际支持字节码,而BULK COLLECT等语句虽不支持但不会影响整个存储过程的字节码执行。文章建议用户以实际测试结果为准,并提供了详细的测试对比表格
2026-08-06 15:48:25
247
原创 【GaussDB】507内核新特性-PLSQL字节码(一)
本文介绍了GaussDB数据库中的PL/SQL字节码技术。字节码是一种为PL/SQL专门定义的指令集,通过将PL/SQL语句转化为字节码数组来执行,相比传统的AST解释执行引擎能显著提升性能。文章详细说明了字节码的启用方式(通过plsql_code_type参数)、支持场景和多项约束条件,并通过循环测试和期权定价算法两个案例展示了字节码带来的性能提升(执行时间减少约2/3)。测试结果表明字节码技术能有效优化PL/SQL存储过程的执行效率。
2026-08-06 15:16:07
349
原创 Prometheus 实现 openGauss 的指标监控(二)Prometheus 中添加 openGauss指标
文章摘要:本文介绍了如何通过Docker部署Prometheus并添加自定义监控指标。首先使用ubuntu/prometheus镜像运行Prometheus服务,映射30090端口;然后通过创建自定义镜像的方式修改配置文件,将opengauss监控指标(target)添加到Prometheus中;最后验证新指标是否成功加入并可在图形界面查看。主要步骤包括编写prometheus.yml配置文件、创建Dockerfile构建自定义镜像,以及通过新镜像重新运行Prometheus服务。
2026-07-28 15:21:11
374
原创 Prometheus 实现 openGauss 的指标监控(一)第一个监控指标
摘要:Prometheus是一款开源系统监控工具,通过时间序列数据存储指标信息。本文介绍了如何使用Prometheus监控openGauss数据库,包括实现自定义Collector接口来收集数据库版本信息。通过定义OpenGaussManager结构体并实现Describe和Collect方法,将监控指标暴露给HTTP接口。示例代码展示了如何连接openGauss、查询版本信息并注册到Prometheus中,最终通过9101端口提供/metrics端点供Prometheus抓取数据。
2026-07-28 15:11:37
280
原创 GaussDB 逻辑备份实操
本文介绍了GaussDB数据库的逻辑备份工具gs_dump和gs_restore的使用方法。逻辑备份可备份表、视图、索引等数据库对象,支持纯文本、自定义归档等四种格式。文章详细说明了备份整个库、特定schema或表的命令示例,并演示了如何通过gs_restore恢复数据库、schema或表数据。这些工具在数据迁移、测试环境搭建等场景中非常实用,特别是分布式环境下重新定义分布键时。备份时可通过参数控制压缩级别、指定对象或排除对象,恢复时可选择仅恢复结构或数据。
2026-07-24 14:48:01
274
原创 【GaussDB】GaussDB锁阻塞源头查询
GaussDB提供多种锁阻塞排查方法:1.实时诊断推荐使用pgxc_lock_conflicts视图(8.1.x+)或多表关联查询(旧版本);2.历史分析通过gs_asp视图统计高频等待事件;3.检查lockwait_timeout等关键参数;4.紧急处理可用PG_TERMINATE_BACKEND终止阻塞会话。建议结合具体锁冲突场景(如并发更新、DDL冲突)优化事务设计,新版本优先使用专用锁视图快速定位问题。
2026-07-24 14:38:18
394
原创 GaussDB keep聚合SQL性能优化分析:从123s到18s的优化之路
文章摘要:本文针对金融交易系统中查询每日行情数据的性能问题,提出四种优化方案。初始方案(方案0)耗时约123秒,主要问题为全表扫描和大排序。通过逐步优化:方案1启用并行查询(43秒,提升65%);方案2采用DISTINCT ON和覆盖索引(41秒,提升67%);方案3使用窗口函数导致性能下降(163秒);最终方案4通过两阶段聚合和反向查找(18秒,提升85%),成功消除排序瓶颈并利用并行计算。关键优化点包括避免大排序、减少数据流转量、并行计算加速和单次表扫描设计。
2026-07-17 15:41:03
477
原创 【openGauss】基于图形化的关系型数据库管理工具的使用
本文介绍了在Windows 11系统中安装和使用openGauss数据库图形化管理工具DataStudio的完整流程。首先需要配置Java环境(JDK 20),然后下载并解压DataStudio。通过新建数据库连接(本地地址127.0.0.1,端口15432)可连接至openGauss数据库,成功连接后会显示主界面。文章详细演示了使用DataStudio执行SQL语句的操作:创建Companies表、设置主键约束、插入数据记录(注意主键唯一性)以及执行查询语句。
2026-07-08 10:28:20
439
原创 【GaussDB】GaussDB通信性能问题定位总结
摘要:本文分析了数据库通信性能问题的排查方法,主要包括四个方面:1)检查网卡多队列配置,优化中断处理;2)监控网络流量,排查带宽瓶颈;3)调整通信库内存参数comm_usable_memory等,避免buffer过小导致频繁流控;4)使用strace追踪系统调用。通过合理设置网卡队列、内存参数等,可有效提升高并发场景下的通信性能。文章强调需结合实际情况全面排查网络链路各环节,灵活运用工具定位问题根源。
2026-07-08 10:16:20
334
1
原创 【GaussDB】GaussDB 的加密方式介绍
本文介绍了华为GaussDB数据库的多层次数据加密方案。GaussDB作为支持多模态的企业级数据库,在安全方面提供了传输层加密(TLS/SSL)确保通信安全,透明数据加密(TDE)保护存储数据,细粒度的字段级加密针对敏感列,以及动态数据屏蔽(DDM)实现实时数据脱敏。这些功能共同构成了完整的数据安全防护体系,可满足金融、医疗等对数据安全要求严格行业的合规需求,在保障性能的同时实现了从传输到存储的全流程保护。
2026-07-01 15:12:47
296
原创 【GaussDB】GaussDB性能调优分析思路
摘要:本文介绍了GaussDB数据库性能调优的整体思路,包括单条SQL和并发SQL的优化方法。对于单条SQL,重点在于选择正确的分布列、创建合适索引、调整表分布方式以及优化执行计划;并发场景则需先优化单条SQL,再结合系统资源分析瓶颈。文章还提供了定位性能问题的SQL查询语句,帮助诊断等待事件、耗时SQL和连接分布情况,最后强调调优需从服务器资源分析入手,针对性解决SQL性能问题。
2026-07-01 15:09:10
469
原创 【GaussDB】权限管理模型:RBAC与ABAC
本文对比分析了GaussDB中两种权限管理模型:基于角色的访问控制(RBAC)和基于属性的访问控制(ABAC)。RBAC通过角色间接授权,结构简单但灵活性不足;ABAC基于多维属性动态决策,更灵活但配置复杂。GaussDB原生支持RBAC,可通过行级安全等机制实现部分ABAC功能。建议常规业务使用RBAC,高敏感场景结合ABAC,或采用混合模式。文章强调应根据实际需求合理选择模型,构建安全易维护的权限体系。
2026-06-25 11:02:40
642
1
原创 【GaussDB】GaussDB数据库高可用能力测试验证
总体上来说,GaussDB数据库具备DN主节点进程和服务器异常时自动切换的能力、支持AZ机房级别的手动切换。这里测试验证了DN主节点故障、DN备节点异常等主要场景的高可用能力,测试结果如下表所示:DN主节点异常时,能够正常切换到备节点,切换期间业务TPS降为0,影响时长约10s。DN备节点异常时,CMA会自动拉起进程。在所有DN备节点异常时,保证高可靠性的前提下,数据库会变成只读状态,故障恢复时间为备节点恢复时间。当DN节点进程挂起或服务端口假活状态时,DN会触发僵死状态的检测。
2026-06-25 10:59:27
239
原创 【GaussDB】GaussDB分区表常规操作
GaussDB分区表技术将大型表分割为更小的物理分区,提高查询和维护效率。支持一级分区(范围、间隔、列表、哈希)和二级分区组合。创建分区表时需指定分区类型、键和表达式,语法兼容多种策略。分区表优势包括改善查询性能、增强可用性、方便维护、扩展性好和均衡I/O。修改分区表支持移动、交换、合并、切割等操作,需注意分区连续性和索引更新。删除分区表与普通表相同,但会同时删除所有分区。使用分区表需合理规划分区数,避免内存不足和性能下降。
2026-06-16 15:24:55
513
原创 【GaussDB】在逻辑复制中剔除指定用户的事务
《GaussDB中实现指定用户操作过滤复制的三种方案对比》 本文针对GaussDB逻辑复制中需要过滤特定用户操作的需求,分析了三种技术方案。首先探讨了基于审计日志提取事务号的方案,但面临日志完整性、逻辑嵌入复杂性和资源消耗等挑战。其次介绍了基于逻辑复制标签的过滤机制,通过事务标记实现过滤,但存在操作遗漏风险。最后推荐了基于历史表归档的策略,通过建立独立schema存放历史表并配置复制规则,虽然会增加IO开销,但实现简单且安全性高。
2026-06-16 15:05:06
275
原创 【GaussDB】GaussDB SMP特性调优详解
摘要:某基金公司在国产化改造过程中,将销售数据中心系统从国外数据库迁移至GaussDB 505.1版本时,发现每日汇总销售数据接口执行耗时达139分钟。通过分析发现性能瓶颈主要存在于219万条记录的分组处理环节,CPU利用率不足5%。调优方案采用SMP并行技术,通过调整GUC参数(如设置query_dop=24、增大内存配置)和SQL改写(将复杂操作拆分为两阶段处理),最终将执行时间从139分钟优化至24分钟,CPU利用率显著提升。关键优化措施包括启用NUMA绑定、增加并行度、优化内存分配以及重构SQL执行
2026-06-09 10:34:47
316
1
原创 【GaussDB】GaussDB重要通信参数汇总
本文系统介绍了GaussDB数据库通信运维中的关键参数配置与优化方法。文章分为通信库参数和操作系统参数两大部分,详细解析了TCP连接保活机制、连接池管理、流量控制等核心参数的作用机制及配置建议。通过典型故障案例分析,展示了参数配置不当导致的连接异常、资源过载等问题,并提供了具体的解决方案。文章强调合理配置参数对提升集群性能和稳定性的重要性,建议结合业务场景动态调整参数,以优化资源利用率。最后提出未来版本应支持参数动态配置的改进方向,为数据库运维人员提供了实用的参考指南。
2026-06-09 10:26:52
538
原创 详解GaussDB触发器
触发器是一种存储在数据库中的特殊程序,它不需要手动调用,而是在满足特定条件(如执行INSERT/UPDATE/DELETE操作)时由数据库自动触发执行。简单来说,触发器就是数据库层的"事件监听器",当监听的事件发生时,预设的逻辑会自动运行。GaussDB触发器作为数据库层的自动化工具,其核心价值在于将数据管控逻辑与业务操作解耦,实现精准、原子化的自动响应。它不是应用层逻辑的替代品,而是补充——适合处理与数据强相关的轻量级逻辑,如校验、同步、审计等。
2026-06-04 15:59:56
598
4
原创 【 GaussDB】GaussDB常规锁简介
GaussDB锁机制解析:三种锁类型与常见问题处理 摘要:GaussDB定义了三种锁机制:spinLock(自旋锁)、LWLock(轻量锁)和RegularLock(常规锁)。其中常规锁分为10种类型,重点关注表锁(relation)和行锁(tuple)。表锁在DDL/DML操作时自动加锁,具有8个等级粒度;行锁支持Forshare和Forupdate两种模式,并发更新时可能产生冲突。文章详细介绍了锁冲突的报错机制、加锁流程(包含典型的三事务场景示例)以及两种快速定位锁等待问题的方法(参数设置和专用工具)。
2026-06-04 15:22:51
426
原创 【GaussDB】GaussDB通信原理总结
而TCP协议本身只能支持一个流,因此我们需要在这一个流中区分不同逻辑连接的数据,通过在TCP报文的head中写入逻辑连接id及后续data的长度来区分,这样虽然TCP只有一个数据包组成,但每个数据包包含多个块,实现了TCP的多流。TCP代理在现有的逻辑连接、代理分发、quota流控等实现的基础上,将数据通道从SCTP协议替换成TCP协议,TCP代理逻辑连接的实现基于head+data的数据包收发模型,在head中写入逻辑连接id及后续data的长度。方法:CN和DN之间也采用逻辑连接实现,即CN多流。
2026-06-04 15:15:38
290
原创 【openGauss】openGauss触发器详解
openGauss触发器应用指南 摘要:openGauss作为开源关系型数据库管理系统,其触发器功能能显著提升数据库自动化管理能力。本文详细介绍了触发器的概念与特点,包括自动执行、灵活性和实时性等优势。通过创建日志表、触发器函数和触发器的完整示例,演示了如何实现对员工表增删改操作的自动日志记录。文章还展示了触发器的高级应用场景,如数据完整性维护(部门薪资限制)、审计日志记录和库存自动更新等,均配有具体代码实现。这些案例充分体现了触发器在确保数据一致性、简化复杂业务逻辑方面的重要价值。
2026-06-01 16:00:18
302
原创 【GaussDB】 keep聚合SQL 性能优化分析:从 123s 到 18s 的优化之路
本文针对金融行情数据查询场景,通过四轮SQL优化将查询耗时从123秒降至18秒。初始方案因全表扫描、大排序和KEEP聚合函数导致性能低下。优化过程依次尝试了并行查询、覆盖索引、窗口函数等方法,最终采用两阶段聚合策略:先用HashAggregate快速获取各品种最大序列号,再精准回查明细数据。关键优化点包括:避免磁盘排序、减少数据流转量、并行计算加速和单次表扫描设计。经验表明,对于大数据量分组求最值场景,"先聚合后JOIN"的模式比直接排序或窗口函数更高效,配合并行查询可显著提升性能。
2026-06-01 15:50:11
653
原创 GaussDB(DWS)性能问题处理套路
摘要:本文提出了一套DWS性能问题排查方法论,包含问卷和三阶段排查流程。问卷通过5W维度(Where/Who/What/Why/When)快速定位问题范围。三阶段排查包括:1)集群健康度检查(状态、可服务性、资源瓶颈);2)业务状态分析(烂SQL清理、阻塞点、并发及排队);3)系统状态诊断(CPU/IO/内存/网络资源)。针对分布式系统特点,强调识别短板效应和瓶颈点,建议根据实际情况灵活调整排查顺序。文末提供了各类问题的处理案例链接,形成完整的性能问题解决闭环。
2026-05-27 15:37:53
473
1
原创 GaussDB(DWS) SQL性能问题案例集
摘要:本文总结了GaussDB(DWS)中SQL语句执行慢的常见问题及解决方法。重点分析了9个典型案例,包括函数不下推、索引未生效、模糊匹配优化、复合索引顺序、分区剪枝失效、数据倾斜、自定义函数性能、视图查询效率以及并行查询优化等。建议通过explain分析执行计划,针对不同场景采取相应优化措施,如更新统计信息、调整索引设计、修改查询条件或参数配置等,以提升SQL执行效率。
2026-05-27 15:29:51
834
4
原创 GaussDB(DWS)数据融合:Oracle增量数据迁移到DWS
本文提出了一种从Oracle到DWS的数据迁移方案,包含全量和增量迁移两个阶段。增量迁移通过DRS模块捕获Oracle数据变更,由Spark程序实现数据回放。方案基于Kafka Topic实现异构数据库间的数据同步,具体流程包括:1)增量数据处理,通过内存数据结构整合插入、更新和删除操作;2)数据存入临时表;3)通过merge和delete语法将临时表数据回放至正式表。该方案支持批量处理和标记删除功能,确保DWS与Oracle数据一致性。
2026-05-26 15:05:23
459
原创 GaussDB(DWS) 资源监控Topsql
摘要:TopSQL是GaussDB(DWS)数据库资源监控工具,分为实时和历史视图,记录SQL语句的资源消耗和执行状态。主要应用场景包括性能问题定位、SQL调优和资源配置参考。实时TopSQL监控运行中SQL的资源使用,历史TopSQL记录已完成SQL的执行信息。数据流向从内存临时表转存到持久化表,可通过参数控制数据保留时间。系统提供query和算子级别的监控视图,并给出推荐配置参数,建议全开监控功能以获取完整SQL执行信息。
2026-05-21 16:21:35
616
1
原创 GaussDB(DWS) 日常维护命令
本文总结了GaussDB(DWS)数据库维护中的常用命令,分为三部分:1)日常维护命令包括会话管理、主备切换、表分布查询等;2)集群管理命令涉及事务查询、启停操作、日志解析等;3)操作系统命令包含进程管理、性能监控和网络诊断。这些命令可帮助DBA快速定位和解决数据库问题,提高运维效率。文中还提供了参数设置建议和优化技巧,为GaussDB(DWS)的日常运维提供了实用参考。
2026-05-21 16:06:04
652
openGauss 产品描述 01.pdf
2021-07-31
openGauss 特性描述 01.pdf
2021-07-31
openGauss 管理员指南 01.pdf
2021-07-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅