oracle系统体系与服务器性能学习小记

本文详细介绍了Oracle系统的体系结构,重点阐述了SGA(系统全局区)和PGA(程序全局区)的功能及作用。通过分析不同服务器处理情况下的内存分配策略,帮助读者更好地配置服务器以提升性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这周了解了一下Oracle的体系结构,备忘如下。

 

Oracle系统体系主要分为两大块,SGA(系统全局区)和PGA(程序全局区)。

SGA主要包括database buffer cache shared pool redo log bufferlarge pool 和 java pool等。当一个实例启动时,系统就为它分配了一块SGADatabase buffer cache 主要存储已访问的或要存入磁盘的数据,shared pool 存储编译解析后的sql语句、数据字典等信息。Redo log buffer 存储恢复文件的信息,Large pool 和 java pool都是可选的,Large pool负责备份、并行处理、I/O操作等,java pool 可处理用java编写的存储过程等。

PGA包括user processserver  processbackground process,分别为用户短的进程、处理客户端和服务器之间的连接的进程、数据库核心运行的进程。一个用户连接上就分配了一个PGA

评价服务器性能的主要指标有响应时间、吞吐量、并发数、处理事务能力、文件缓存命中率、cpu负载和I/O的读写能力等等。针对不同的服务器处理情况要配置不同的服务器设置可以让服务器运行的更好。服务器可以把运行基本软件剩余的内存全分配给Oracle系统,以便更合理利用现有资源。

当服务器中的联机事务分析(OLAP)多的时候,可以分配较多的内存给PGAOLAP主要是处理大数据量的一次性事务,全表分析,排序等,此时需要大量的内存用于处理这些事务。

当联机事务处理(OLTP)多时,可分配较多内存于SGAOLTP主要处理大量的小型事务,对性能的要求较高。SGA中的内存分配除了shared pool 要分配较多的内存外,可把分配后剩下的大部分内存分配给db cache,由SGA基本知识可知,把近期使用过的数据存储在db缓存中,可提高访问数据时的命中率,不需要再到磁盘中读出。适当大小的shared pool存储编译后的sql语句,当有相同的语句进来,可以减小重复的sql解析。其他几块的内存只需适当的大小即可,可以根据实际需要来分配。

<!--EndFragment--> <!--EndFragment-->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值