- 浏览: 7331083 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
何时触发lgwr,dbwr,chpk等进程 Log Writer (LGWR) LGWR performs sequential writes from the Redo Log Buffer to the online redo log file under the followingsituations: 1.When a transaction commits 2.When the Redo Log Buffer is one-third full 3.When there is more than 1 MB of changes recorded in the Redo Log Buffer 4.Before DBWn writes modified blocks in the Database Buffer Cache to the data files 5.Every three seconds .Because the redo is needed for recovery, LGWR confirms the commit operation only after the redo is written todisk. LGWR can also call on DBWn to write to the data files. Database Writer (DBWn) The server process records changes to undo and data blocks in the Database Buffer Cache. DBWn writes thedirty buffers from the Database Buffer Cache to the data files. It ensures that a sufficient number of free buffers(buffers that can be overwritten when server processes need to read in blocks from the data files) are availablein the Database Buffer Cache. Database performance is improved because server processes make changes onlyin the Database Buffer Cache. DBWn defers writing to the data files until one of the following events occurs: Incremental or normal checkpoint The number of dirty buffers reaches a threshold value A process scans a specified number of blocks when scanning for free buffers and cannot find any Timeout occurs A ping request in Real Application Clusters (RAC) environment Placing a normal or temporary tablespace offline Placing a tablespace in read-only mode Dropping or truncating a table ALTER TABLESPACEtablespace nameBEGIN BACKUP 1. 当Buffer Cache中的Dirty List长度达到阀值: DBWR将Dirty List中的Dirty Buffer写入磁盘(user Server Process在LRU List中查找free buffer时将碰到的dirty blocks移入Dirty List) 2. 当user Server Process在Buffer Cache的LRU List中搜索了过长的时间而仍然没有找到free buffer: DBWR直接从LRU List中将Dirty Buffer写入磁盘 3. 每过3秒钟: DBWR把dirty buffers从LRU List移到Dirty List,一旦Dirty List长度达到阀值,DBWR便将数据写入磁盘 4. Checkpoint发生时: DBWR把所有的dirty buffers从LRU List移到Dirty List,并且开始写数据 5. 当Tablespace开始Hot backup时: DBWR把所有属于该表空间的dirty buffers从LRU List移到Dirty List,并且开始写数据 6. 当Tablespace offline时: DBWR把所有属于该表空间的dirty buffers从LRU List移到Dirty List,并且开始写数据 7. 执行Drop时: drop table或者index将促使DBWR先将属于该segment的dirty blocks写入磁盘 checkpoint是一个数据库事件,它将已修改的数据从高速缓存刷新到磁盘,并更新控制文件和数据文件。 我们知道了checkpoint会刷新脏数据,但什么时候会发生checkpoint呢?以下几种情况会触发checkpoint。 1.当发生日志组切换的时候 2.当符合LOG_CHECKPOINT_TIMEOUT,LOG_CHECKPOINT_INTERVAL,fast_start_io_target,fast_start_mttr_target参数设置的时候 3.当运行ALTER SYSTEM SWITCH LOGFILE的时候 4.当运行ALTER SYSTEM CHECKPOINT的时候 5.当运行alter tablespace XXX begin backup,end backup的时候 6.当运行alter tablespace ,datafile offline的时候;
PMON进程:
该进程在用户进程出现故障时执行进程恢复,负责清理内存储区和释
放该进程所使用的资源。例:它要重置活动事务表的状态,释放封锁,将该故障
的进程的ID从活动进程表中移去。PMON还周期地检查调度进程(DISPATCHER)和
服务器进程的状态,如果已死,则重新启动(不包括有意删除的进程)。
PMON有规律地被呼醒,检查是否需要,或者其它进程发现需要时可以被调用。
SMON进程:
放该进程所使用的资源。例:它要重置活动事务表的状态,释放封锁,将该故障
的进程的ID从活动进程表中移去。PMON还周期地检查调度进程(DISPATCHER)和
服务器进程的状态,如果已死,则重新启动(不包括有意删除的进程)。
PMON有规律地被呼醒,检查是否需要,或者其它进程发现需要时可以被调用。
SMON进程:
该进程实例启动时执行实例恢复,还负责清理不再使用的临时段。在
具有并行服务器选项的环境下,SMON对有故障CPU或实例进行实例恢复。SMON进程
有规律地被呼醒,检查是否需要,或者其它进程发现需要时可以被调用。
DBWR进程:
具有并行服务器选项的环境下,SMON对有故障CPU或实例进行实例恢复。SMON进程
有规律地被呼醒,检查是否需要,或者其它进程发现需要时可以被调用。
DBWR进程:
该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个OR
ACLE后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主
要任务是将“弄脏”的缓冲区写入磁盘,使缓冲区保持“干净”。由于缓冲存储
区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的
缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用
的缓冲区时,DBWR将管理缓冲存储区,使用户进程总可得到未用的缓冲区。
ORACLE采用LRU(LEAST RECENTLY USED)算法(最近最少使用算法)保持内存中
的数据块是最近使用的,使I/O最小。在下列情况预示DBWR 要将弄脏的缓冲区写
入磁盘:
1、当一个服务器进程将一缓冲区移入“弄脏”表,该弄脏表达到临界长度
时,该服务进程将通知DBWR进行写。该临界长度是为参数DB-BLOCK-WRITE-BATCH
的值的一半。
2、 当一个服务器进程在LRU表中查找DB-BLOCK-MAX-SCAN-CNT缓冲区时,没
有查到未用的缓冲区,它停止查找并通知DBWR进行写。
3、出现超时(每次3秒),DBWR 将通知本身。
4、 当出现检查点时,LGWR将通知DBWR
在前两种情况下,DBWR将弄脏表中的块写入磁盘,每次可写的块数由初始化参数
DB-BLOCK-WRITE-BATCH所指定。如果弄脏表中没有该参数指定块数的缓冲区,DB
WR从LUR表中查找另外一个弄脏缓冲区。
如果DBWR在三秒内未活动,则出现超时。在这种情况下DBWR对LRU表查找指定数目
的缓冲区,将所找到任何弄脏缓冲区写入磁盘。每当出现超时,DBWR查找一个新
的缓冲区组。每次由DBWR查找的缓冲区的数目是为寝化参数DB-BLOCK-WRITE-BAT
CH的值的二倍。如果数据库空运转,DBWR最终将全部缓冲区存储区写入磁盘。
在出现检查点时,LGWR指定一修改缓冲区表必须写入到磁盘。DBWR将指定的缓冲
区写入磁盘。
在有些平台上,一个实例可有多个DBWR。在这样的实例中,一些块可写入一磁盘
,另一些块可写入其它磁盘。参数DB-WRITERS控制DBWR进程个数。
LGWR进程:
ACLE后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主
要任务是将“弄脏”的缓冲区写入磁盘,使缓冲区保持“干净”。由于缓冲存储
区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的
缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用
的缓冲区时,DBWR将管理缓冲存储区,使用户进程总可得到未用的缓冲区。
ORACLE采用LRU(LEAST RECENTLY USED)算法(最近最少使用算法)保持内存中
的数据块是最近使用的,使I/O最小。在下列情况预示DBWR 要将弄脏的缓冲区写
入磁盘:
1、当一个服务器进程将一缓冲区移入“弄脏”表,该弄脏表达到临界长度
时,该服务进程将通知DBWR进行写。该临界长度是为参数DB-BLOCK-WRITE-BATCH
的值的一半。
2、 当一个服务器进程在LRU表中查找DB-BLOCK-MAX-SCAN-CNT缓冲区时,没
有查到未用的缓冲区,它停止查找并通知DBWR进行写。
3、出现超时(每次3秒),DBWR 将通知本身。
4、 当出现检查点时,LGWR将通知DBWR
在前两种情况下,DBWR将弄脏表中的块写入磁盘,每次可写的块数由初始化参数
DB-BLOCK-WRITE-BATCH所指定。如果弄脏表中没有该参数指定块数的缓冲区,DB
WR从LUR表中查找另外一个弄脏缓冲区。
如果DBWR在三秒内未活动,则出现超时。在这种情况下DBWR对LRU表查找指定数目
的缓冲区,将所找到任何弄脏缓冲区写入磁盘。每当出现超时,DBWR查找一个新
的缓冲区组。每次由DBWR查找的缓冲区的数目是为寝化参数DB-BLOCK-WRITE-BAT
CH的值的二倍。如果数据库空运转,DBWR最终将全部缓冲区存储区写入磁盘。
在出现检查点时,LGWR指定一修改缓冲区表必须写入到磁盘。DBWR将指定的缓冲
区写入磁盘。
在有些平台上,一个实例可有多个DBWR。在这样的实例中,一些块可写入一磁盘
,另一些块可写入其它磁盘。参数DB-WRITERS控制DBWR进程个数。
LGWR进程:
该进程将日志缓冲区写入磁盘上的一个日志文件,它是负责管理日志
缓冲区的一个ORACLE后台进程。LGWR进程将自上次写入磁盘以来的全部日志项输
出,LGWR输出:
1、 当用户进程提交一事务时写入一个提交记录。
2、每三秒将日志缓冲区输出。
3、 当日志缓冲区的1/3已满时将日志缓冲区输出。
4、当DBWR将修改缓冲区写入磁盘时则将日志缓冲区输出。
LGWR进程同步地写入到活动的镜象在线日志文件组。如果组中一个文件被删除或
不可用,LGWR 可继续地写入该组的其它文件。
日志缓冲区是一个循环缓冲区。当LGWR将日志缓冲区的日志项写入日志文件后,
服务器进程可将新的日志项写入到该日志缓冲区。LGWR 通常写得很快,可确保日
志缓冲区总有空间可写入新的日志项。
注意:有时候当需要更多的日志缓冲区时,LWGR在一个事务提交前就将日志项写
出,而这些日志项仅当在以后事务提交后才永久化。
ORACLE使用快速提交机制,当用户发出COMMIT语句时,一个COMMIT记录立即放入
日志缓冲区,但相应的数据缓冲区改变是被延迟,直到在更有效时才将它们写入
数据文件。当一事务提交时,被赋给一个系统修改号(SCN),它同事务日志项一
起记录在日志中。由于SCN记录在日志中,以致在并行服务器选项配置情况下,恢
复操作可以同步。
缓冲区的一个ORACLE后台进程。LGWR进程将自上次写入磁盘以来的全部日志项输
出,LGWR输出:
1、 当用户进程提交一事务时写入一个提交记录。
2、每三秒将日志缓冲区输出。
3、 当日志缓冲区的1/3已满时将日志缓冲区输出。
4、当DBWR将修改缓冲区写入磁盘时则将日志缓冲区输出。
LGWR进程同步地写入到活动的镜象在线日志文件组。如果组中一个文件被删除或
不可用,LGWR 可继续地写入该组的其它文件。
日志缓冲区是一个循环缓冲区。当LGWR将日志缓冲区的日志项写入日志文件后,
服务器进程可将新的日志项写入到该日志缓冲区。LGWR 通常写得很快,可确保日
志缓冲区总有空间可写入新的日志项。
注意:有时候当需要更多的日志缓冲区时,LWGR在一个事务提交前就将日志项写
出,而这些日志项仅当在以后事务提交后才永久化。
ORACLE使用快速提交机制,当用户发出COMMIT语句时,一个COMMIT记录立即放入
日志缓冲区,但相应的数据缓冲区改变是被延迟,直到在更有效时才将它们写入
数据文件。当一事务提交时,被赋给一个系统修改号(SCN),它同事务日志项一
起记录在日志中。由于SCN记录在日志中,以致在并行服务器选项配置情况下,恢
复操作可以同步。
发表评论
-
各种数据库分页Dialect的方法
2011-12-02 09:01 2010以下分页技术均来自hibernate-core-3.3.1.G ... -
Oracle控制文件管理
2011-10-18 17:00 2086每一个Oracle数据库都有一个二进制文件记录着数据库的物理结 ... -
Oracle 问题诊断工具ADRCI(ADRCI: ADR Command Interpreter)
2011-10-29 09:23 2093ADRCI is a command-line tool th ... -
Oracle正则表达式函数:regexp_like、regexp_substr、regexp_instr、regexp_replace
2011-10-17 17:07 8582Oracle使用正则表达式离 ... -
Oracle 10g SQL Fundamentals II(学习笔记二第7-8章)
2011-10-17 16:27 1869第七章分层检索 语法: SELECT [LE ... -
Oracle 10g SQL Fundamentals II(学习笔记二第5-6章)
2011-10-17 16:26 1456第五章不同时区管理数据 TIME_ZONE 会话参数 ... -
Oracle 10g SQL Fundamentals II(学习笔记二第3-4章)
2011-10-17 16:25 1673第三章 大数据集合 从一个表中拷贝数据 ... -
Oracle 10g SQL Fundamentals II(学习笔记二第1-2章)
2011-10-17 16:23 1907第一章用户访问 创建用户 create user us ... -
Oracle 10g SQL Fundamentals I(学习笔记二第10-11章)
2011-10-16 11:19 1606第十章创建其他对象(视图,索引,序列,同义词) 视图的优点 ... -
Oracle 10g SQL Fundamentals I(学习笔记二第7-8章)
2011-10-16 11:17 1145第七章使用各种操作Union/UNION ALL/MINUS/ ... -
ORACLE CTAS(create table as select)使用注意点
2011-10-09 11:28 6378ORACLE CTAS(create table as sel ... -
Oracle的小应用
2011-10-08 16:38 905今天同事打电话让我把数据库中的一个用户下所有表的注释导出 ... -
Oracle 10g SQL Fundamentals I(学习笔记二第4-6章)
2011-10-08 16:28 1538第四节: 分组函数: select [column, ... -
Oracle 10g SQL Fundamentals I(学习笔记第1-3章)
2011-10-08 16:25 1707第一章和第二章 distinct like 'S%' ... -
Oracle监控语句
2011-09-21 22:40 8491.监控事例的等待 select event,sum(de ... -
Oracle Rman 命令详解(List report backup configure)
2011-09-21 22:37 1532一、list常用命令总结备忘 list命令列出控制文件、 ... -
Oracle RMAN相关验证备份
2011-09-20 23:19 2181一.备份db并查看备份 list backup summ ... -
Oracle 的 Alert 日志
2011-09-20 23:18 2904从 Oracle 11g 开始,Oracle 数据库以XML与 ... -
Oracle 几个常用命令
2011-09-19 19:35 1289OEMC启动dbconsole进程1. emctl star ... -
Oracle中登录文件Login的定制
2011-09-14 10:55 1832在window系统针对Oracle登录调试设置登录 ...
相关推荐
Oracle 12c 内部架构与后台进程详解 Oracle 12c 是一款功能强大且复杂的关系数据库管理系统,了解其内部架构和后台进程是 DBA 的必备知识。本文将详细介绍 Oracle 12c 的后台进程和内存结构图,帮助读者深入了解 ...
- 当Redo Log Buffer中的数据达到一定阈值(通常是其大小的三分之一)、数据量达到1MB、经过3秒钟或发生检查点时,LGWR(Log Writer)进程会被触发,将Redo Log Buffer中的数据写入磁盘上的Redo Log文件。 这一系列...
多进程结构包括用户进程和Oracle进程,后者又细分为服务器进程和后台进程。 用户进程是用户应用程序的一部分,如PRO*C或SQL*PLUS,它们与服务器进程通信以执行SQL语句。服务器进程负责处理来自用户进程的请求,包括...
LGWR进程通常在事务提交、重做日志缓存满三分之一或DBWR开始写入脏缓存块时启动。如果DBWR需要写入脏缓存块,但相关的重做信息还在缓存中,LGWR会被触发先将这些重做信息写入日志文件,以保持数据的一致性。 检查点...
Oracle进程分为两大类:用户进程和Oracle进程,进一步细分为服务器进程和后台进程。 在单进程Oracle实例中,所有Oracle代码都在一个进程中执行,这适用于单用户环境,比如在MS-DOS上运行Oracle。而在多进程Oracle...
### Oracle数据库后台进程功能解析——DBWR进程 #### 一、引言 Oracle数据库作为业界广泛使用的数据库管理系统之一,其内部包含多个复杂且高效的后台进程,以确保数据的一致性与完整性。其中,DBWR(Database ...
本文主要探讨了Oracle数据库的两个关键后台进程:DBWR(Database Writer)和LGWR(Log Writer),并阐述了它们的工作机制。 DBWR进程的主要任务是将修改过的、标记为“脏”的数据缓冲区内容写回到数据文件中,从而...
日志写入进程(LGWR),又称为Log Writer Process,是Oracle数据库中至关重要的进程之一,主要负责将事务提交后的重做日志(redo log)从内存中的重做日志缓冲区写入到物理重做日志文件中。LGWR的触发时机包括但不...
- 定期检查“dispatcher”和服务器进程的状态,并重启那些非正常终止的Oracle进程。 #### RECO:恢复进程 **功能介绍**: RECO(Recoverer Process)主要用于处理分布式事务中的故障。在一个具有分布式事务支持的...
(6)后台进程 PMON,LCLN,RECO,SMON,DBWR,LGWR,CKPT,ARCH PMON 做程序的清洁工作,处理一些不正常退出的事件. SMON 做系统的清洁工作,执行系统出错后自动恢复工作. LCKN Oracle系统表级或行级加锁的进程. ...
在多进程结构中,Oracle后台进程扮演着关键角色,包括Dnnn(Dispatcher)、DBWR(Database Writer)、LGWR(Log Writer)、ARCH(Archiver Log Process)、PMON(Process Monitor)、SMON(System Monitor)、CKPT...
数据库服务进程包括多个子进程,如PMON(进程监控器)、SMON(系统监控器)、DBWn(数据库写入器)、LGWR(日志写入器)等,它们协同工作以保证数据库的稳定运行和数据的一致性。 综上所述,OracleDBConsoleorcl...
Oracle数据库是一个复杂而强大的关系型数据库管理系统,其内存结构和进程结构对于理解和优化数据库性能至关重要。在Oracle中,实例(Instance)是访问数据库的关键途径,它由内存结构和进程结构两大部分组成。 1. ...
后台进程是Oracle实例的重要组成部分,包括DBWR(数据库写入进程)、LGWR(日志写入进程)、PMON(进程监控进程)等,它们负责数据的持久化、日志同步、资源清理等关键任务。 总的来说,理解Oracle的内存结构和进程...
Oracle数据库系统是由一系列后台进程协同工作来保证数据的稳定性和高效性。这些后台进程是数据库运行的核心组成部分,它们各自承担着特定的任务,确保数据库的正常运行。以下是对这些主要后台进程的详细介绍: 1. *...
需要注意的是,如果 Kill 掉的是 Oracle 的核心后台线程(DBWR, LGWR, SMON or PMON),将导致 Oracle 实例关闭。可以使用以下 SQL 语句来检查 Oracle 的核心后台线程: ```sql Select vb.name NOME, vp.programe ...
7. LGWR(日志写入)进程:将日志缓冲区的内容写入重做日志文件。 在Oracle 10g中,Oracle引入了自动内存管理,简化了管理员的工作,可以根据数据库的负载自动调整内存分配,从而优化性能。通过SQL语句如`ALTER ...
- 这条语句可以帮助我们了解当前系统中活跃的后台进程的状态,例如DBWR(数据库写进程)、LGWR(日志写进程)等。 2. **会话监控** - 使用以下语句查看当前所有会话的状态: ```sql select sid, serial#, ...
### Oracle后台进程详解 Oracle数据库系统中包含了多种后台进程,这些进程在数据库启动时自动启动,并负责执行各种关键任务,确保数据库的正常运行。本文将详细介绍Oracle后台进程中几个重要的进程的功能与作用。 ...