Oracle 10g 进程体系学习总结
由于Oracel 10g 是一个多进程多线程的数据库,而SQL server是一个单进程多线程的数据库
Oracel实例主要有3类进程
1,服务器进程
2,后台进程
3,从属进程
服务器进程:分为专有服务器进程和共享服务器进程
后台进程:
1,PMON(进程监视器)
该进程是在出现异常中止后完成操作,还包括监视其他后台进程,如果这些进程崩溃,他来负责重启进程。PMON还会向Oracle TNS 监听器注册当前实例
2,SMON(系统监视器)
它完成所有“系统级”的任务:
清理临时表空间,合并空闲时间,执行RAC的节点恢复,收缩和“离线”回滚段
3,RECO(分布式数据库恢复)
负责2PC事务处理
4,CKPT(检查点进程)
更新数据库文件的文件首部,以辅助建立真正的检查点进程(dbwn)
5,DBWn(数据写入器)
负责将脏块写入磁盘的后台进程
6,LGWr(日志写入器)
将重做日志的数据写入磁盘
1,每3秒中执行一次,2 ,任何事务提交时,3,重做日志缓存区1/3满时,或者包含1M数据: 触发执行
7,ARCn(归档进程)
当在线重做日志填满时,将日志文件复制到另一个位置。
从属进程:
I/O从属进程和并行查询进程
详细说明:
SMON是系统监视器(System Monitor)的缩写。如果Oracle实例失败,则在SGA中的任何没有写到磁盘中的数据都会丢失。有许多情况可能引起Oracle实例失败,例如,操作系统的崩溃就会引起Oracle实例的失败。当实例失败之后,如果重新打开该数据库,则背景进程SMON自动执行实例的复原操作。
DBWR是数据库书写器(Database Write)的缩写.该服务器进程在缓冲存储区中记录所有的变化和数据,DBWR把来自数据库的缓冲存储区中的脏数据写到数据文件中,以便确保数据库缓冲存储区中有足够的空闲的缓冲存储区。脏数据就是正在使用但是没有写到数据文件中的数据。
LGWR是日志书写器(Log Write)的缩写。LGWR负责把重做日志缓冲存储区中的数据写入到重做日志文件中。
CKPT进程是检查点(Checkpoint)的缩写。该进程可以用来同步化数据库的文件,它可以把日志中的文件写入到数据库中。
PMON是进程监视器(Process Monitor)的缩写。当取消当前的事务,或释放进程占用的锁以及释放其它资源之后,PMON进程清空那些失败的进程。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具