oracle进程什么时候,oracle五大进程详解

oracle必须的五大进程:

1、server process 服务器进程

【以客户端执行一条sql为例说明】:

1、sql语句通过网络到达实例、server process 接收sql语句

2、server process 去shard pool找sql和执行计划 若没有则硬解析解析sql

3、server process  根据执行计划去buffer cache(缓存dbf的数据)找相关的数据(逻辑读),

如没有找到则到dbf文件中取出数据(物理读)放到buffer chache 再返给用户。

4、若需要修改数据,server process 读出数据到buffer cache中,在内存中修改数据,修改完返给用户。

server process始终为用户服务,故:server process处理的快慢直接影响用户体验的快慢。

PGA就是为了server process服务

PGA会为每一个新产生的server process分配一块内存,这块内存就是这个server process的工作空间

server process什么时候会大量的使用到pga分配的内存空间?

1)排序

sort order by

group by

union

2)hash join

server process进行排序或者hash的时候,如果所需要的pga内存不足

server process就会把一部分数据写入到temp表空间,产生物理io

性能会很差(大部分结果是性能非常差)

查看进程

select * from v$process;

查看临时文件使用情况,以确认PGA是否出现过问题

select * from v$tempstat;(可查看临时表物理IO情况)

select * from v$tempfile;

select * from v$sql_workarea_active;

根据sql_id查看SQL语句

select t.SQL_FULLTEXT from v$sql t where sql_id='23p6x4thkyfsz'

2、PMON  Servr process进程监视器

1.清理与实例非法断开的server procese残留的资源,非正常终止的用户进程产生的垃圾资源

2.负责重启以外死掉的调度器(网络监听中使用的)

3.将实例的信息注册到监听程序

3、SMON 系统监视进程

空间管理:  定期合并空间(老版本才有) 定期回收临时段

实例恢复:  (如掉电导致实例意外终止)

恢复的方法: 先前滚==>后回滚==>释放资源

前滚       将数据库中的SQL(包括提交的和未提交的)全部重新做一遍

回滚       将没提交的SQL句从数据库中将老的镜像取出覆盖

释放资源      将前滚和回滚中使用到的资源释放

IO带宽是否被占满

4、LGWR 只有一个进程,不会向数据写进程那么多,因为写要求有顺序 将redo log buffer里的条目写到redo文件

LGWR触发写的条件

1.commit

2.redo log buffer 1/3满

3.redo log buffer 日志缓冲区达到1M

4.写日志优先(任何一次数据写之前)

当更新数据量很多时 日志量很少(就是一update) 数据量却很多 所以采用写日志优先

5.3秒写一次

查看redo Log buffer大小的语句

show parameter log_buffer

数据文件重要性

1、日志的重要性高于一切

特别是redo log

redo log 一定要实现复用

select * from v$log;

DBWn n指的是0-9 a-j 多个写进程的区分 将脏块写盘

触发写的条件

1.产生检查点

2.脏数据缓冲区达到阀值 默认10%

3.扫描整个db buffer没有空闲  db buffer中包含脏的和未脏的 优先写脏数据列表 再写未改的

4.timeout超时 如果DBWR没事做 会被每三秒唤醒一次去巡检 写不写不一定

5.集群环境的ping请求触发多实例的数据写请求

6.表级别的truncate或drop也会触发数据写

7.修改表空间的read only

8.做表空间的offline(离线)

9.热备份 begin backup命令

CKPT 把新的检查点写入指定位置

1.调度数据写dbwN

2.将新检查点写数据文件头

3.将新检查点写控制文件中的数据文件头的记录

lix kengic

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值