分享
 
 
 

由浅入深讲解Oracle数据库进程的相关概念

王朝oracle·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

Oracle数据库进程概述:

Database buffer cache主要用于存储数据文件中的数据块

数据库高速缓存的数据块是高速缓存与数据文件进行信息交换的基本单位。在Oracle数据库8i以前,数据块大小只有一种,而Oracle数据库9i以后支持2K,4K,8KB,16KB及32KB五种。

用命令SQL>SHOW PARAMETER DB可以显示当前数据库的BUFFER CACHE

数据库缓存和特点如下:

<1>.根据最近最少使用LRU.

<2>. 由DB_BLOCK_SIZE来指定大小.

<3>.ORACLE使用时是以块大小为单位进行数据存取的.

还包含以下一些独立的子缓存:

<1>.DB_CACHE_SIZE.

<2>.DB_KEEP_CACHE_SIZE.

<3>.DB_RECYCLE_CACHE_SIZE.

注:可以用Alter system set db_cache_advice=on;设置成根据系统的建议来指定大小。

REDO LOG FILE主要是用于重做日志

用命令SQL>SHOW PARAMETER LOG_BUFFER。

SQL>ALTER SYSTEM SET LOG_BUFFER_SIZE=60M。

用来显示或修改重做日志缓冲区的一些信息。

命令SQL>achive log list 可以查看数据库当前的归档模式。

LARGE POOL:

与JAVA POOL一样,都是作为系统可选的内存结构,由SGA来配置。

JAVA POOL:

当安装或使用JAVA时才用到.

ORACLE内存进程包括两个,一个是SGA,一个是PGA.

(1).SGA在ORACLE实例启动时分配,是ORACLE实例的一个基本组件.

(2).PGA是在当服务器进程启动时分配的.

进程结构:

<1>.USER PROCESS.用于用户与ORACLE SERVER交互的进程.

USER PROCESS必须与ORACLE建立连接后才可使用,不可与ORACLE SERVER交互.

<2>.SERVER PROCESS.

SERVER PROCESS在用户与服务之间建立连接后,为执行用户命令的一个进程.

<3>.BACKGROUND PROCESS.

后台进程:DATABASE WRITER (DBWn)用来把DATA BUFFER CACHE中的脏数据写回到数据库中.

(注:脏数据是被改变的数据.)

在以下情况下它会写数据库:

<1>.在发生CHECKPOINT同步.

<2>.脏数据达到阀值.

<3>.DATABASE BUFFER CACHE 自由空间太少了.

<4>.TIMEOUT (3秒钟.)

<5>.RAC PING REQUEST.

<6>.TABLESPACE OFFLINE.

<7>.TABLESPACE READONLY.

<8>.TABLE DROP OR TABLE TRUNCATE (表数据清空或表结构删除).

<9>.TABLESPACE BEGIN BACKUP.

由SGA (包含DATABASE BUFFER CACHE,BACKGROUND PROCESS)-----> [ DBWn ]----> {data files,

control files, redo log file} ---->由此过程改变数据库中的数据.

LOG WRITER (LGWR) 日志写进程

在Oracle环境中

<1>.当COMMIT的时候.

<2>.当三分之一空间满时.

<3>.当日志有1MB需要重做时.

<4>.每3秒

<5>.BEFORE DBWn WRITES.(写数据前先写日志).

REDO LOG BUFFER----->LGWR--->DBWn

|--------------------------------------> REDO LOG FILES

SYSTEM MONITOR (SMON)系统监控进程

主要任务:

(1).启动过程(假定DATABASE重启时)如果需要RECOVERY,则此进程会负责打开数据库,及回滚没有

提交的事务;以及rolls forward changes in the redo logs..这些统称为:instance recovery.

(2).对每3秒就对系统自由空间的整理.(COALESCES FREE SPACE EVER 3 SEC.)

(3).清空临时段空间(DEALLOCATES TEMPORARY SEGMENTS).

这个过程也是在系统启动过程中完成的.

PROCESS MONITOR (PMON) 进程监控进程

主要用于回滚异常终止的或被用户强制终止的事务.

<1>.rolling back the transaction.

<2>.releasing locks.释放锁.

<3>.releasing other resources.

<4>.restarts dead dispatchers.重启死掉的调度器.(在共享服务器中用).

PMON (:Include in SGA)----------------------->PGA

CHECKPOINT (CKPT) 检查点进程

用来在数据库里实现同步,实现之前会强制将脏数据从内在里写到物理文件里.

<1>.会启动DBWn来写脏数据(SIGNALLING DBWn at CKPT.)

<2>.完后会更新DATAFILE的HEADER和控制文件的HEADER.而HEADER中有同步所需要的信息,即

CHECKPOINT的信息.

<3>.在ORACLE中,正常情况下,所有文件必须同期性地同步;靠CHECKPOINT来完成.

CKPT(作为后台进程包含在实例中)------------------DATABASE

(data files,control files,redo log files.)

| |______DBWn

|________LGWR

Archive PROCESS (ARCn) :归档进程(可选进程),当设置归档模式后,可用来自动备份在线日志,(归档日志是重做日志的备份.)

<1>.Automatically archives online redo logs when archiverlog mode is set.

(设置归档模式后,将自动备份在线日志)

在处理SQL语句时,注意以下过程:

<1>.用以下进程连接到实例.

------------------用户进程(USER PROCESS).

------------------服务器进程(SERVER PROCESS).

<2>.Oracle服务器进程组件的使用依赖于SQL语句的种类.

[1].查询语句会返回行.

[2].DML语句会记录这种改变.

[3].COMMIT保证了事务的RECOVERY.

<3>.并不是所有的SQL语句中所有的后台进程都会参与.

结论:

Oracle Server. Oracle服务器进程包含一些文件,进程和内存,在执行一条SQL语句时,并非所有这些都会用上,有些进程用于提高数据库的性能;一些用于当发生软件或硬件异常时恢复数据库;或应用于完成其他一些维护数据库的任务.ORACLE服务器包含ORACLE实例和ORACLE数据库.

Oracle Instance: Oracle实例是用于联系后台进程和内在之间的活动,对数据库进行数据存取前必须先启动实例,每当实例启动时,SGA就被分配给它并启动了一些后台进程.后台进程执行10秒操作并监控有些进程以提供更好的性能.和可靠性.

Oracle Database: 数据库包含了系统文件,也称数据库文件,其提供了用以存储数据库信息的实际物理存储区域,用数据文件保证了数据一致性,并在当实例发生失败时恢复数据库。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有