统全局区
sga(system global area)是oracle系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作,图2-3给出实例与sga及数据库关系。
sga分为以下几个部分:
(1) 共享池。
(2) 数据块缓冲区。
(3) 日志缓冲区。
(4) 字典缓冲区。
下面分别介绍:
说明:
sga的尺寸应小于物理内存的一半。
在oracle系统中,所有用户与oracle数据库系统的数据交换都要经过sga区。
1.共享池(shared pool)
由共享sql区和数据字典区组成,参数shared_pool_size确定共享池大小,共享sql区包括:
(1) sql或pl/sql语句的文本。
(1) sql或pl/sql语句的语法分析形式。
(2) sql或pl/sql语句的执行方案。
说明:shared_pool_size=物理内存×(15~20)%对于ops取下限。
2.数据块缓冲区
用于存储从数据文件中读出的数据,其大小由以下两个参数决定:
db_block_size确定数据块的大小,一般为2k或4k。
db_block_buffers确定数据块的数目。
db_buffers=db_block_buffers×db_block_size=物理内存×(15~25)%, 对于ops取上限。该值应尽量大。
3.日志缓冲区
以记录项的形式备份数据库缓冲区中被修改的缓冲块,这些记录项将被写到日志文件中。日志缓冲区大小由参数log_buffer确定
4.字典缓冲区
用于存放数据字典信息行。
5.sga设置大小总原则
在设置各参数调整sga大小时,应保证其小于物理内存的一半。
sga的计算方法如下:
sga=db_block_buffers×db_block_size+share_pool_size+sort_area_size+1m+3×db_block_size×(cpus+2)×paralell_max_srevers
说明:
ops才有最后一项。
sort_area_size:排序区,并发用户数较多,需要排序时该值宜大。
paralell_max_srevers:2×cpu个数×4×并发用户数。对单cpu不能修改此值。
以上就是ORACLE数据库系统全局区,更多相关文章请关注PHP中文网(www.php.cn)!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号