达梦结构
- 存储结构(逻辑管理物理)
- 逻辑存储
- 表空间 -> 段 -> 簇 -> 页(块)
- 表空间是对数据库的逻辑划分
- 段是对表空间的逻辑划分,表段,索引段
- 表空间 -> 段 -> 簇 -> 页(块)
- 物理存储 (硬盘上的文件)
- 数据文件:*.dbf
- 重做日志文件:记录客户端的事务操作
- 控制文件
- 参数文件
- dm.ini 主参数文件
- sqllog.ini 配置sql日志
- 归档数据文件
- 逻辑存储
- 线程结构
- 监听线程
- IO线程
- 工作线程
- 调度线程
- 日志刷新线程
- 内存结构
- 内存池
- 缓冲区
- 排序区
- 哈希区
达梦实例启动与关闭
- 启动或者关闭实例
- 实例状态和模式
数据字典
- 系统表
数据回滚
- 作用
- 原理
- 对比:回滚undo和重做redo
- 管理回滚数据
闪回 flashback
-
参数设置
-
闪回查询
-
闪回版本查询
表操作
查看数据表
select tablespace_name.contents from dba_tablespaces;
创建数据表
create tablespace mytbs[表名称] datafile '/[文件存储位置].dbf' size xxx[文件大小];
扩容
alter tablespace mytbs add datafile '/[新文件存储位置].dbf' size xxx;
段操作
段查询
desc deg_segments;
查看物理文件
数据文件
desc v$datafile;
重做日志文件
desc v$rlogfile 默认有两个,循环使用 生产环境建议开启日志归档模式 -> 数据库的完全恢复
alter database add logfile 'url'
达梦数据库写入过程
- 客户端提交(提交事务)
- 数据库实例-> 内存区域(检查点队列,存放脏数据,不可以持久化)
- 重做日志文件(只要写入重做日志文件,就相当于提交成功)
- 数据库产生检查点的时候,就会唤醒写线程,然后写入数据文件【重做日志满,或者定期线程被唤醒】
参数配置
- 静态参数
- 动态参数
- 手动参数
使用sp_set_para_value();