DM 的体系结构
⚫体系结构概览
⚫DM 存储结构
数据文件、联机日志文件、控制文件、参数文件是必备的,缺一不可。
[dmdba@DCA02 DAMENG]$ ll *.DBF
-rw-r–r--. 1 dmdba dinstall 134217728 1 月 11 14:25 DMHR.DBF
-rw-r–r--. 1 dmdba dinstall 134217728 1 月 11 14:29 MAIN.DBF
-rw-r–r--. 1 dmdba dinstall 134217728 1 月 11 15:18 ROLL.DBF
-rw-r–r--. 1 dmdba dinstall 24117248 1 月 11 15:53 SYSTEM.DBF
-rw-r–r--. 1 dmdba dinstall 10485760 1 月 11 15:13 TEMP.DBF [dmdba@DCA02 DAMENG]$ ll *.log
-rw-r–r--. 1 dmdba dinstall 268435456 1 月 11 16:13 DAMENG01.log
-rw-r–r--. 1 dmdba dinstall 268435456 1 月 11 15:13 DAMENG02.log
-rw-r–r--. 1 dmdba dinstall 826 1 月 11 14:24 dminit20210111142408.log
-rw-r–r--. 1 dmdba dinstall 12 1 月 11 14:24 rep_conflict.log [dmdba@DCA02 DAMENG]$ ll dm.ctl
-rw-r–r--. 1 dmdba dinstall 5632 1 月 11 15:13 dm.ctl [dmdba@DCA02 DAMENG]$ ll dm.ini
-rw-r–r--. 1 dmdba dinstall 48810 1 月 11 14:24 dm.ini
归档日志文件
数据库开启归档之后,会产生归档日志文件。备份文件
数据备份产生的文件。跟踪日志文件
安装目录 log 下面数据库运行时产生的日志文件
参数文件 dm.ini(文本文件)
记录了数据库初始化相关参数、包含实例名、端口号、控制文件路径、控制文件的备份路径,默认数据库备份路径、主内存池、数据库缓冲区、排序区、HASH 区等相关参数等。
读取数据库参数:
select * from v d m i n i ; s e l e c t ∗ f r o m " V dm_ini; select * from "V dmini;select∗from"VPARAMETER";
四种参数:
READ ONLY:不能通过系统函数修改,可以通过 dm.ini 配置文件来修改。
IN FILE:静态参数,可通过函数修改配置文件中的值,但修改后需要重启数据库才能生效。SYS:系统级动态参数,针对系统级生效。可以通过函数修改其值。
SESSION:会话级参数,可以只针对会话生效。可以通过函数修改其值。
修改静态参数(数据库兼容性参数): sp_set_para_value(2, ‘COMPATIBLE_MODE’, 2);
修改动态参数(表的默认类型,DM 默认的表为索引组织表,Oracle 默认为堆表): sp_set_para_value(1, ‘LIST_TABLE’, 1);更改为 1 表示默认创建的表为堆表。
针对动态级参数(与 oracle 略有差异): alter system set ‘LIST_TABLE’ = 0 memory; alter system set ‘LIST_TABLE’ = 0 both;
针对静态参数:
alter system set ‘COMPATIBLE_MODE’ = 4 SPFILE;
控制文件
控制文件中包含:
数据库的 OGUID 值、数据库模式(单机为 Normal 模式,主备环境有 Primary、Standby 模式)
表空间数据文件信息、联机日志文件信息数据库启动次数、最后启动时间等
使用 dmctlcvt 工具可以将控制文件转换为文本文件,也可以将文本转化为控制文件。
[dmdba@DCA02 DAMENG]$ cd /dm8/bin [dmdba@DCA02 bin]$ ./dmctlcvt help DMCTLCVT V8
格式: ./dmctlcvt KEYWORD=value
注意: 控制文件名称必须指定为 dm.ctl、dmmpp.ctl、dss.ctl