Print

【MVS】达梦数据库页为4K时为什么不支持DBMS_WORKLOAD_REPOSITORY 包

2026-07-21 发表

问题描述

看一介绍“若创建数据库时页大小选择为4K,不支持DBMS_WORKLOAD_REPOSITORY包的相关方法”

那达梦数据库页为4K时为什么不支持DBMS_WORKLOAD_REPOSITORY 包呢?

解决方法

达梦数据库的页大小决定了数据库的物理存储单位,直接影响每行记录的最大长度限制。当页大小为4K时,每条记录的总长度不能超过页面大小的一半,即2KB(约2048字节)。而 DBMS_WORKLOAD_REPOSITORY 包在创建时,会生成 SYSAUX 表空间,用于存储快照数据,该包相关的系统表(如 SYS.WRM$_SNAPSHOT、SYS.WRH$_SQL_HISTORY 等)需要记录包含快照时间、SQL文本、数据库配置等多个字段的完整信息,其中某些字段的数据长度可能超出 4K 页大小下每行记录的最大长度限制,导致快照数据无法正常写入和存储。

 

此外,页大小是在数据库初始化时指定的,一旦创建完成,在整个数据库生命周期内都无法修改。因此,如果在初始化时选择了 4K 页大小,后续即便尝试使用 DBMS_WORKLOAD_REPOSITORY 包,也会因存储结构无法满足该包的数据存储要求而无法正常使用。