注册
DM8 与 openGauss 数据库架构及运维对比
专栏/培训园地/ 文章详情 /

DM8 与 openGauss 数据库架构及运维对比

胖头鱼 2026/10/29 155 1 0
摘要

达梦部分以 DM8 为基础;openGauss 的资源池化、SPQ 和 oGRAC 参考 7.0.0 文档,具体能力以实际版本和部署方式为准。文中命令以 Linux 为例,目录、端口和账号按实际环境替换。

1 架构总览

需求或形态 达梦 DM8 openGauss
单机运行 单实例访问一个数据库;单机本身不提供故障自动接管 单实例承载业务;单机本身不提供故障自动接管
主备架构 DMDataWatch 数据守护:主库发送 Redo(重做日志),备库按日志更新数据;配合守护进程和监视器实现故障接管 主库通过 WAL 日志同步到备机;支持一主多备、级联备,可由 CM 管理集群
利用备机分担读 DMRWC 读写分离:JDBC、DPI 等接口配合 dm_svc.conf,把部分查询交给备库 传统备机可以查询;查询发给谁、能否立即读到新数据,需要另外配置
共享存储 DMDSC:多个实例共用一个数据库,都可以读写 DataPod 资源池化:一个节点写、多个节点读;oGRAC:多个节点都能读写
分布式计算 DMMPP、DMDPC 将数据和计算任务分配到多个节点,具体分工不同 SPQ 让资源池化中的多个节点共同执行查询
跨中心容灾 用数据守护在另一中心保留数据副本,可配合单实例、MPP、DMDSC 主备使用各自的存储;资源池化也有双集群容灾方案

2 单机架构与对象概念

实例是运行中的进程和内存,数据库是它管理的数据。下面重点对照它们与模式、表空间的关系。

概念 达梦 DM8 单机 openGauss 常规架构
实例与数据库 一个实例同一时刻管理一个数据库;DMDSC 则由多个实例共用一个库 一个实例可管理多个 Database;连接时指定要使用的库
业务对象隔离 在同一个库内,用用户、Schema(模式)和权限区分业务对象 Database → Schema → 表等对象;各库对象分开,但仍共用实例资源及用户、角色等全局对象
用户与模式 创建用户时自动建立同名默认模式;一个用户可拥有多个模式 用户/角色管身份和权限;Schema 用来组织表等对象,区分不同模式中的同名对象
表空间 表空间由一个或多个数据文件构成;主要有 SYSTEM、ROLL、MAIN、TEMP 等 常规表空间对应存储目录;可容纳不同数据库的对象
数据组织 页组成簇,簇组成段,段位于表空间中;ROLL 保存回滚所需信息,也用于一致性读 支持行存、列存等组织方式;文件和数据页的管理方式随存储引擎而不同
日志名称 联机 Redo 记录数据修改,归档日志保留历史 Redo;用于恢复和主备同步 WAL(也称 XLog)记录数据修改,用于恢复和主备复制;两者都要与记录报错等信息的运行日志区分
服务端与配置 dmserver;dm.ini 配置实例;dm.ctl 是控制文件,不是普通配置文本 gaussdb;postgresql.conf;pg_hba.conf 控制连接认证

2.1 对象层级差异

**熟悉 openGauss → 达梦:**先确认 dm.ini 对应的实例,再决定业务放在同库的不同模式中,还是拆成独立实例。以 APP.ORDERS 为例,APP 是模式名,ORDERS 是表名;表空间决定表等对象存在哪里。

**熟悉达梦 → openGauss:**先确认连接的 Database 和使用的 Schema。search_path 决定不写模式名时,按什么顺序查找表等对象。单库备份不包含其他库,也不包含共享的用户、角色等全局对象。

2.2 建库规划

建库前,先确定字符集、是否区分大小写、兼容模式、数据和日志位置、备份空间及账号权限。达梦还要确定页大小等初始化参数。兼容模式能适配部分语法和行为,但驱动、系统视图、备份格式和存储过程仍要分别检查。

3 主备复制与自动切换

主备复制负责同步数据,集群管理负责判断故障和切换角色。日志同步正常,不代表自动接管已经配置完成。

对照点 达梦数据守护 openGauss 传统主备
复制内容与存储 通过 MAL 通信链路传递 Redo,备库按日志更新本地数据;主备各存一份 持续传输 WAL,备机按日志更新本地数据;各副本分别存储
主备初始数据 先从主库备份还原出备库,再配置守护;两个分别新建的空库不能直接组成主备 从主机构建备机,先复制一致的数据,再持续接收日志
复制配置入口 dmarch.ini 选归档类型;dmmal.ini 配置通信;dm.ini 开启相关功能 replconninfo 等连接配置;同步备选择与提交等待参数分开管理
故障管理 dmwatcher 检查实例状态;自动接管还必须配置确认监视器 dmmonitor CM 的 server/agent 负责监控和故障处理;两节点部署要配置仲裁,判断失联后谁能继续服务
扩展与容灾 可增加备库;异步备也可继续向下游备库传日志,要关注日志落后多少、故障后如何接管 支持一主多备;级联备通过其他备机接收日志;按网络条件和可接受的数据丢失量选择同步或异步

3.1 复制模式与提交确认点

达梦:REALTIME 先向备库发送日志,再写本地联机日志;TIMELY 先写本地联机日志,再发送;ASYNC 定时发送归档日志。提交时是否还要等备库按日志更新数据(重演),取决于事务一致模式和部署条件,不能只看归档类型的名称。

openGauss:synchronous_standby_names 选择哪些备机参与同步;synchronous_commit 决定提交时等到哪一步。on 等待同步备机把日志写入磁盘(刷盘),remote_apply 等待备机按日志完成数据更新(回放)。开启最大可用模式后,同步备不足时,主库可能继续提交,而不再等齐原先要求的备机。

读写分离还要配置驱动和连接方式,应用才会把查询分给备库。业务如果要求写入后马上读到新数据,要让这类查询走主库,或确认当前配置能保证这种一致性。

3.2 切换与接管

计划切换(switchover)是在主备都正常时交换角色,通常用于维护。故障接管(failover/takeover)是在原主异常时,让备库成为新主。切换后的检查项见第 7.4 节。

RPO 表示最多能接受丢失多长时间内的数据,RTO 表示最多能接受业务中断多久。异步复制可能丢失尚未送达备库的修改;同步方案也要看提交时等到了哪一步,以及故障时是否继续提交。恢复时间还要算上应用重连和事务重试,不能只看备库成为主库用了多久。

4 共享存储与分布式架构

4.1 共享存储

架构 存储与读写方式 运维重点
达梦 DMDSC 多个实例共用一个数据库,都能读写;集群协调各节点的操作,保持数据一致 DMASM 管共享存储,DMCSS 负责集群同步;还要监控节点间网络、共享盘和相关服务
openGauss DataPod 资源池化 DSS 管共享存储,DMS 协调各节点访问;一个节点写、多个节点读,备机支持实时一致性读 检查共享盘、网络、仲裁及 DSS/DMS;备份和参数修改需使用资源池化对应的流程
openGauss oGRAC 多个实例共享数据,都能读写;由集群保证跨节点读写的一致性 按 oGRAC 专用流程部署和维护;这项能力不代表普通主备或所有旧版本都支持多写

共享存储增加的是访问同一数据库的实例,不是独立的数据副本。要防整个存储或机房故障,还需在另一处保存数据:达梦 DMDSC 可配合数据守护,openGauss 资源池化可采用网络双集群方案。

4.2 分布式计算

架构 数据与计算方式 使用边界
达梦 DMMPP 把数据分到多个执行节点,让各节点同时处理任务;每个节点都可配置主备 每个备库只保存对应执行节点的数据;不能把这些备库直接当成一套完整的 MPP 只读查询集群
达梦 DMDPC SP 接收请求并安排执行任务;BP 存数据并执行任务;MP 管表结构、数据分布等元数据。BP、MP 可配置 RAFT 多副本 分片把不同数据分开存,副本把同一份数据多存几份;副本也占空间,节点数不能直接换算成可用容量
openGauss SPQ 数据仍放在资源池化共享存储中,把查询任务交给多个节点同时执行 扩展的是多节点计算能力,不能据此把普通主备当成分片多写数据库

5 部署与工具

5.1 部署流程

阶段 达梦 DM8 openGauss
安装软件 图形化、命令行或静默安装 企业版通常通过 XML 和 OM 安装;也有极简版等形态,DataKit 可提供图形化入口
初始化实例 用 dminit 或数据库配置助手创建数据库及初始文件 用 gs_initdb 创建初始数据目录;企业版通常由安装流程调用
构建主备 先用备份还原同步主备数据,再配置 MAL、归档、守护和确认监视器 配置复制连接、构建备机,再部署 CM 并验证仲裁
共享存储 先配置共享盘、DMASM、DMCSS,再创建 DMDSC 先准备共享盘和网络,再按资源池化或 oGRAC 流程实施
容器与虚拟机 仍需设计数据持久化、故障隔离和高可用 同样需要;容器或虚拟机本身不等于数据库高可用

**达梦:**使用 dmdba 安装软件,再初始化单机数据库。PATH 为新库目录,密码字段替换为符合策略的实际值。

./DMInstall.bin -i dminit PATH=/data/dm DB_NAME=DAMENG INSTANCE_NAME=DMSERVER \ PORT_NUM=5236 CHARSET=1 CASE_SENSITIVE=Y \ SYSDBA_PWD='替换管理员密码' SYSAUDITOR_PWD='替换审计员密码'

CHARSET=1 表示 UTF-8;CASE_SENSITIVE=Y 表示大小写敏感。建库参数应在初始化前确定,不能将重新执行初始化当成修改现有库。

**openGauss:**企业版安装前,准备与版本匹配的 XML、安装包和系统环境。预安装权限按对应版本指南配置,gs_install 在数据库安装用户(示例为 omm)下执行。

gs_preinstall -U omm -G dbgrp -X /opt/software/cluster_config.xml gs_install -X /opt/software/cluster_config.xml

5.2 工具对照

用途 达梦 DM8 openGauss
SQL 命令行 disql gsql
实例启停 注册的 DmService... 服务或 dmserver gs_ctl
集群管理 dmwatcher、dmmonitor;共享集群还有 dmcss 等 gs_om、cm_ctl
配置管理 dm.ini 及参数管理过程 gs_guc、postgresql.conf、pg_hba.conf
逻辑导出导入 dexp、dimp gs_dump、gs_dumpall、gs_restore
物理备份恢复 联机 BACKUP SQL;脱机 dmrman gs_basebackup、gs_probackup
可视化运维 MANAGER、CONSOLE、DEM DataKit

DEM 和 DataKit 是配套管理平台,平台页面不可用,不等于数据库已经停止。

6 连接与单机管理

6.1 连接数据库

**达梦:**先启动客户端,再输入 LOGIN,按提示填写地址、端口、用户名和密码:

disql /nolog

在 disql 中查询数据库和实例:

SELECT * FROM V$VERSION; SELECT * FROM V$INSTANCE; SELECT * FROM V$DATABASE; SELECT * FROM V$TABLESPACE;
disql 命令 用途
LOGIN 交互输入连接信息,登录其他实例
DESC APP.ORDERS 查看指定表结构
@/tmp/check.sql 执行 SQL 文件
EXIT 退出客户端

达梦普通 SQL 以分号结束;创建存储过程等语句块时,按 DIsql 规则使用独立一行的 / 结束。退出前显式 COMMIT 或 ROLLBACK,不要依赖客户端默认提交行为。

**openGauss:**下面连接本机 5432 端口的 postgres 库,按提示输入密码:

gsql -h 127.0.0.1 -p 5432 -d postgres -U dbadmin

在 gsql 中,SQL 以分号结束,反斜线命令不需要分号:

SELECT version(); SELECT current_database(), current_user; SHOW search_path;
gsql 命令 用途
\l 列出数据库
\c appdb 切换到 appdb
\dn 列出模式
\dt app.* 列出 app 模式的表
\d app.orders 查看指定表结构
\du 列出角色
\i /tmp/check.sql 执行 SQL 文件
\q 退出客户端

6.2 单机启停

**达梦:**以下假设已注册服务 DmServiceDMSERVER,以有权限管理该服务的用户执行。

service DmServiceDMSERVER status service DmServiceDMSERVER start service DmServiceDMSERVER stop

需要前台观察启动日志时,可在实例已停止的情况下使用:

dmserver /data/dm/DAMENG/dm.ini

**openGauss:**使用数据库运行用户,指定现有数据目录。

gs_ctl status -D /data/opengauss gs_ctl start -D /data/opengauss gs_ctl stop -D /data/opengauss -m fast

fast 会断开连接并回滚活动事务,适用于已安排维护窗口的停机操作。

CM 或数据守护管理下的实例,应从集群管理入口安排启停,避免管理组件重新拉起实例或触发接管。

6.3 查看参数与文件位置

**达梦:**在 disql 中执行:

SELECT NAME, TYPE, VALUE, SYS_VALUE, FILE_VALUE FROM V$PARAMETER WHERE NAME IN ('PORT_NUM', 'MAX_SESSIONS', 'BUFFER', 'ARCH_INI');

**openGauss:**在 gsql 中执行:

SHOW data_directory; SHOW port; SHOW max_connections; SHOW shared_buffers; SHOW archive_mode; SHOW archive_command;

参数写进配置文件,不一定马上生效:有些只影响当前连接,有些需要重新加载配置,有些需要重启。达梦看参数类型,openGauss 看参数上下文。修改后再查实际值;资源池化环境还要确认其他节点的配置已同步。

7 主备检查与容灾运维

7.1 配置文件对照

作用 达梦数据守护 openGauss 传统主备
实例参数 dm.ini postgresql.conf
复制通道 dmmal.ini 配置实例间通信的地址和端口 replconninfo1 等参数配置复制连接,还要配好连接认证
复制和归档策略 dmarch.ini 设置日志归档和发送方式;定时发送还可能用到 dmtimer.ini 设置哪些备机参与同步、提交等到哪一步,以及 WAL 如何归档
故障管理 dmwatcher.ini、dmmonitor.ini cm_server.conf、cm_agent.conf
客户端访问 驱动、服务名及 dm_svc.conf 等 驱动、多地址连接或业务访问入口

7.2 达梦状态检查

在 disql 中执行:

SELECT * FROM V$INSTANCE; SELECT * FROM V$ARCH_STATUS;

交互检查时使用已准备好的普通监视器配置。普通监视器也支持管理命令,并非只读工具;已有确认监视器服务时,不要重复启动同一份确认监视器配置。

dmmonitor /data/dm/dmmonitor_normal.ini

在 dmmonitor 中执行:

show global info show help

重点看主备角色、数据库、守护和归档状态。Valid 表示归档有效,不代表备库已经追平。LSN 是日志位置;主库持续写入时,要看备库的位置是否跟着前进、主备差距是否不断扩大。

7.3 openGauss 状态检查

在操作系统终端查看 CM 集群状态:

cm_ctl query -Cvidp

在有日志发送连接的节点查询复制状态:

SELECT application_name, client_addr, state, sync_state, sender_sent_location, receiver_write_location, receiver_flush_location, receiver_replay_location FROM pg_stat_replication; SHOW synchronous_standby_names; SHOW synchronous_commit; SHOW most_available_sync;

按发送 → 写入备库 → 备库刷盘 → 备库回放查看进度。哪两个位置的差距持续扩大,就先查对应环节。位置差不是延迟秒数;日志已经写到磁盘,也可能还没更新到数据中,备库查询仍可能读到旧值。

7.4 切换和容灾验收

操作 使用时机 验收重点
计划切换 主备均正常,维护时交换角色 备库数据追平,应用连接转向新主,读写正常
故障接管 原主不可用,备库接替服务 旧主不再对外写入,核实是否丢数据,验证业务恢复
原主重加入 故障修复后,让旧主重新成为备库 从新主同步数据,不能让旧主直接恢复写服务
异地容灾演练 模拟机房或站点故障 另一站点的存储、网络可用,仍能完成仲裁;记录实际丢失数据量和恢复时间

容灾是完整链路:数据库复制 + 故障判断 + 写节点切换 + 业务入口切换 + 应用重连。多个节点位于同一主机或共享同一故障存储,不能提供完整的站点级保护。

8 逻辑备份与恢复

逻辑备份导出建表等对象定义和表中数据,适合按库、模式或表搬迁、恢复;两种产品的导出文件不能直接互导。

任务 达梦 openGauss
单库或对象导出 dexp gs_dump
整体导出范围 dexp FULL=Y:当前达梦数据库 gs_dumpall:实例内全部数据库及用户、角色等全局对象
导入 dimp SQL 文本用 gsql;归档格式用 gs_restore
导出范围 FULL(整库)、OWNER(用户)、SCHEMAS(模式)、TABLES(表),一次只选一种 数据库、模式、表

8.1 达梦导出与导入

下面导出 APP 模式,再导入独立测试实例 127.0.0.1:5237。密码换成实际值;/backup/dm 在运行 dexp/dimp 的主机上。导入前先准备目标账号、模式和表空间。

dexp 'USERID=SYSDBA/替换密码@127.0.0.1:5236' \ SCHEMAS=APP DIRECTORY=/backup/dm FILE=app.dmp LOG=app_exp.log dimp 'USERID=SYSDBA/替换密码@127.0.0.1:5237' \ SCHEMAS=APP DIRECTORY=/backup/dm FILE=app.dmp LOG=app_imp.log

整库逻辑导出时,将 SCHEMAS=APP 替换为 FULL=Y。密码含特殊字符时按工具的转义规则处理;自动化任务优先使用受控参数文件或已配置的凭据机制。

8.2 openGauss 导出与导入

以下在终端执行。/backup/og 由运行导出工具的用户写入;导入示例使用已创建的空测试库 appdb_restore,所需角色和表空间应预先准备。

导出为 SQL 文本,再导入测试库:

gs_dump -h 127.0.0.1 -p 5432 -U dbadmin \ -F p -f /backup/og/appdb.sql appdb gsql -h 127.0.0.1 -p 5432 -U dbadmin \ -d appdb_restore -f /backup/og/appdb.sql

需要选择性恢复对象时,使用归档格式:

gs_dump -h 127.0.0.1 -p 5432 -U dbadmin \ -F c -f /backup/og/appdb.dump appdb gs_restore -h 127.0.0.1 -p 5432 -U dbadmin \ -d appdb_restore /backup/og/appdb.dump

两种方式选一种,不要重复导入同一个目标库。gs_dump 把源库名写在命令末尾,不加 -d;gsql 和 gs_restore 用 -d 指定导入哪个库。

备份全部数据库及全局对象:

gs_dumpall -h 127.0.0.1 -p 5432 -U dbadmin -f /backup/og/all.sql

逻辑恢复完成后检查导入日志、对象数量、无效对象、行数和关键业务数据;跨库迁移还应检查字符集、大小写及 SQL 兼容性。

9 物理备份与恢复

物理备份保存数据页等底层内容,适合整库恢复。联机备份在数据库运行时执行,脱机操作则需要停库。主备用于故障接管;误删也会同步到备库,找回历史数据仍要靠独立备份。

能力 达梦 openGauss
全量备份 联机 BACKUP DATABASE 或脱机 DMRMAN gs_basebackup、gs_probackup
增量备份 完全备份配合增量备份 gs_probackup 的 PTRACK 模式
整库还原 停止目标库,先还原数据文件,再应用日志完成恢复 停止目标实例,恢复数据文件,再回放日志
时间点恢复 用物理备份和连续归档日志,恢复到指定时间或日志位置(LSN) 用物理备份和连续 WAL,执行时间点恢复(PITR)

9.1 达梦联机备份

先确认数据库处于 OPEN 状态、本地归档已启用且正常;备份目录位于数据库服务器,数据库运行用户需要写权限。采用 DMAP 辅助进程方式时确保 DMAP 服务可用。

在 disql 中执行全量备份:

BACKUP DATABASE FULL BACKUPSET '/backup/dm/full_20260920';

增量备份只保存变化的部分,不能单独还原;恢复所需的全量及相关增量备份要一起保留。下面是累计增量示例:

BACKUP DATABASE INCREMENT CUMULATIVE WITH BACKUPDIR '/backup/dm' BACKUPSET '/backup/dm/inc_20260921';

DMRMAN 负责脱机备份还原,联机热备通过 SQL 执行,两者用途不同。

9.2 达梦脱机还原

下面把全量备份还原到独立的单机测试库。测试库需提前初始化并停止,数据文件使用独立路径。源、目标路径不同时,先按手册设置文件映射,也就是指定各个数据文件还原到哪里,避免写回源库目录。

在终端启动工具:

dmrman

在 DMRMAN 中依次执行:

RESTORE DATABASE '/data/dm_restore/DAMENG/dm.ini' FROM BACKUPSET '/backup/dm/full_20260920'; RECOVER DATABASE '/data/dm_restore/DAMENG/dm.ini' FROM BACKUPSET '/backup/dm/full_20260920'; RECOVER DATABASE '/data/dm_restore/DAMENG/dm.ini' UPDATE DB_MAGIC;

RESTORE 还原数据文件,RECOVER 再应用日志,使数据达到一致状态。随后更新数据库标识 DB_MAGIC,再启动测试库检查。构建数据守护备库要按包含 FOR STANDBY 等要求的对应流程执行,不能直接照搬这组单机恢复命令。

9.3 openGauss 全量热备

以下 openGauss 备份示例适用于常规单机或传统主备环境。在终端使用 gs_basebackup,先配置复制连接认证和权限,预留足够的 max_wal_senders 连接,并创建空的备份目录。示例不含数据目录外的自定义表空间;如有,需配置表空间映射或采用合适的备份格式。

gs_basebackup -h 127.0.0.1 -p 5432 -U dbadmin \ -D /backup/og/base_20260920 -F plain -X stream -P

-X stream 在备份期间同步接收所需 WAL。此工具只做全量备份,不做增量。

9.4 openGauss 全量与增量管理

以下使用 gs_probackup,由数据库运行用户在本机执行。增量备份前,先启用 enable_cbm_tracking=on 记录数据页变化,再做一次全量备份。示例不含外部表空间;如有数据目录外的自定义表空间,需按文档配置 --external-dirs。

先创建备份目录结构,再登记要备份的实例,以下两条通常只需执行一次:

gs_probackup init -B /backup/og/probackup gs_probackup add-instance -B /backup/og/probackup \ -D /data/opengauss --instance=og1

执行全量备份;后续再执行增量备份:

gs_probackup backup -B /backup/og/probackup --instance=og1 \ -b FULL -h 127.0.0.1 -p 5432 -U dbadmin -d postgres gs_probackup backup -B /backup/og/probackup --instance=og1 \ -b PTRACK -h 127.0.0.1 -p 5432 -U dbadmin -d postgres

查看并校验备份:

gs_probackup show -B /backup/og/probackup --instance=og1 gs_probackup validate -B /backup/og/probackup --instance=og1

恢复演练时,从 show 结果选择 BACKUP_ID。先停止目标实例;恢复环境的主版本要与源库一致,目标目录单独准备。如有外部表空间,需另行映射到独立路径,不能只修改 -D。

gs_probackup restore -B /backup/og/probackup --instance=og1 \ -i BACKUP_ID -D /data/og_restore

还原后检查端口、目录和恢复配置,再启动验证。上述命令用于还原选定的备份。恢复到备份之后的某个时间,还需要覆盖这段时间的连续 WAL 和 PITR 配置,不能只填一个 --recovery-target-time。传统主备的主库回退后,还要重新构建备机。

9.5 备份验收

  • 确认全量备份、恢复所需的各份增量备份和连续日志都能正常读取。
  • 配置文件、证书、密钥及外部表空间也要纳入备份范围。
  • 定期在隔离环境恢复,检查关键业务数据并记录恢复耗时。
  • 删除旧备份或归档前,确认剩余备份和日志仍能覆盖要求的恢复时间范围。

10 日常巡检与排障

10.1 会话与锁

**达梦:**在 disql 中执行:

SELECT SESS_ID, STATE, TRX_ID, SQL_TEXT FROM V$SESSIONS; SELECT * FROM V$TRXWAIT; SELECT * FROM V$LOCK WHERE BLOCKED = 1;

**openGauss:**在 gsql 中执行:

SELECT * FROM pg_stat_activity; SELECT * FROM pg_locks;

先找出哪些会话在等待,再查它们在等哪把锁、锁被哪个事务占着。没有查询结果时,也要确认账号是否有查看权限,以及检查时阻塞是否已经结束。

10.2 统计信息与执行计划

以下以已有业务表 app.orders/APP.ORDERS 为例;统计信息收集应在合适的维护时段执行。

达梦:

CALL DBMS_STATS.GATHER_TABLE_STATS('APP', 'ORDERS'); EXPLAIN SELECT * FROM APP.ORDERS WHERE ORDER_ID = 1001;

openGauss:

ANALYZE app.orders; EXPLAIN SELECT * FROM app.orders WHERE order_id = 1001;

统计信息描述表的数据量和分布,优化器据此选择执行计划。openGauss 的 VACUUM/autovacuum 维护方式取决于存储引擎;VACUUM FULL 可能阻塞正常访问,不适合当作例行清理命令。这些空间维护方法不能直接套用到达梦。

10.3 常见问题检查顺序

现象 优先检查
连接不上 地址和端口 → 监听 → 网络与认证 → 实例状态 → 连接数与连接池
主备延迟 日志发送 → 接收 → 刷盘 → 回放 → 备机查询和 I/O 负载
空间持续增长 区分数据、事务日志、归档、备份;检查日志保留和备份链依赖
SQL 突然变慢 阻塞 → 执行计划变化 → 统计信息 → I/O 与并发负载
切换后应用仍失败 新主角色 → 业务访问入口 → 驱动重连 → 连接池旧连接 → 事务重试
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服