达梦的特点是单进程多线程管理
select * from v$thread
通过控制台查看信息
达梦的线程分类及功能如下:
1. I/O线程
需要处理的数据块不在缓冲区中,此时需要将相关数据块读入缓冲区缓冲区满或系统关闭时,此时需要将部分脏数据块写入磁盘,检查点到来时,需要将所有脏数据块写入磁盘。
2. 调度线程
达梦数据实例调度线程有以下功能
检查系统级的时间触发器;动态缓冲区检查,根据需要动态扩展或动态收缩系统缓冲池;
自动执行检查点;会话超时检测;必要时执行数据更新页刷盘;唤醒等待的工作线程;等
3. 日志相关线程
日志归档
包含同步归档线程和异步归档线程,前者负责本地归档和远程同步归档任务,后者负责远程异步归档任务。如果配置了非实时归档,由日志FLUSH线程产生的任务会分别加入日志归档线程,日志归档线程负责从任务队列中取出任务,按照归档类型做相应归档处理。
日志刷新
主要用于事务提交或检查点时将日志缓冲区中的REDO日志写入到redo日志文件中。如果系统配置了实时归档,在FLUSH线程日志刷盘前,会直接将日志通过网络发送到实时备机。如果配置了本地归档或者远程同步归档,则生成归档任务,通过日志归档线程完成。
日志重做
主要用于系统故障恢复,日志重做线程根据REDO日志进行并行的故障恢复。
4.监听线程
用于在服务器端口上进行循环监听,有来自客户的连接请求,监听线程被唤醒并生成一个会话申请任务,加入工作线程的任务队列,等待工作线程进行处理。
相关视图
V$latches:在等待线程信息
V$threads:当前系统中所有活的线程信息