- 浏览: 56850 次
- 性别:
- 来自: 北京
最近访客 更多访客>>
最新评论
-
yvonxiao:
这个的确好用,我记得我以前是自己写了个存储过程来解决这种递归问 ...
Oracle Start With Connect By
近来公司技术,研发都在问我关于内存参数如何设置可以优化Oracle的性能,所以抽时间整理了这篇文档,以做参考。
目的:
希望通过整理此文档,使公司同事对oracle内存结构有一个全面的了解,并在实际的工作中灵活应用,使oracle的内存性能达到最优配置,提升应用程序反应速度,并进行合理的内存使用。
实例结构
oracle实例=内存结构+进程结构
oracle实例启动的过程,其实就是oracle内存参数设置的值加载到内存中,并启动相应的后台进程进行相关的服务过程。
进程结构
oracle进程=服务器进程+用户进程
几个重要的后台进程:
DBWR:数据写入进程.
LGWR:日志写入进程.
ARCH:归档进程.
CKPT:检查点进程(日志切换;上一个检查点之后,又超过了指定的时间;预定义的日志块写入磁盘;例程关闭,DBA强制产生,表空间offline)
LCKn(0-9):封锁进程.
Dnnn:调度进程.
内存结构(我们重点讲解的)
内存结构=SGA(系统全局区)+PGA(程序全局区)
SGA就是我们所说的内存调优的主要对象。我们重点就是设置SGA
原则:SGA+PGA+OS使用内存<总物理RAM
1、SGA系统全局区.(包括以下五个区)
A、数据缓冲区:(db_block_buffers)存储由磁盘数据文件读入的数据。
大小: db_block_buffers*db_block_size
Oracle9i设置数据缓冲区为:Db_cache_size
原则:SGA中主要设置对象,一般为可用内存40%。
B、共享池:(shared_pool_size):数据字典,sql缓冲,pl/sql语法分析.加大可提速度。
原则:SGA中主要设置对象,一般为可用内存10%
C、日志缓冲区:(log_buffer)存储数据库的修改信息.
原则:128K ---- 1M 之间,不应该太大
D 、JAVA池(Java_pool_size)主要用于JAVA语言的开发.
原则:若不使用java,原则上不能小于20M,给30M通常就够了
E、 大池(Large_pool_size) 如果不设置MTS,主要用于数据库备份恢复管理器RMAN。
原则:若不使用MTS,5---- 10M 之间,不应该太大
SGA=. db_block_buffers*db_block_size+ shared_pool_size+ log_buffer+Java_pool+size+large_pool_size
原则: 达到可用内存的55-58%就可以了.
2、PGA程序全局区
A、Sort_area_size 用于排序所占内存
B、Hash_area_size 用于散列联接,位图索引
这两个参数在非MTS下都是属于PGA ,不属于SGA,是为每个session单独分配的,在我们的服务器上除了OS + SGA,一定要考虑这两部分
原则:OS 使用内存+ SGA + session*(sort_area_size + hash_area_size + 2M) < 总物理RAM 为好
实例配置
基本掌握的原则是, db_block_buffer 通常可以尽可能的大,shared_pool_size 要适度,log_buffer 通常大到几百K到1M就差不多了
A、如果512M RAM
建议 shared_pool_size = 50M, db_block_buffer* db_block_size = 200M
B、如果1G RAM
建议 shared_pool_size = 100M , db_block_buffer* db_block_size = 400M
C、如果2G
建议 shared_pool_size = 200M , db_block_buffer *db_block_size = 800M
参数更改方式
oracle8i:
主要都是通过修改Oracle启动参数文件进行相关的配置
参数文件位置:
d:\oracle\admin\DB_Name\pfile\init.ora
按以上修改以上参数值即可。
Oracle9i:
两种方式:第一种是修改Oracle启动参数文件后,通过此参数文件再创建服务器参数文件
第二种是直接运行oracle修改命令进行修改。
SQL>alter system set db_cache_size=200M scope=spfile;
SQL>alter system set shared_pool_size=50M scope=spfile
目的:
希望通过整理此文档,使公司同事对oracle内存结构有一个全面的了解,并在实际的工作中灵活应用,使oracle的内存性能达到最优配置,提升应用程序反应速度,并进行合理的内存使用。
实例结构
oracle实例=内存结构+进程结构
oracle实例启动的过程,其实就是oracle内存参数设置的值加载到内存中,并启动相应的后台进程进行相关的服务过程。
进程结构
oracle进程=服务器进程+用户进程
几个重要的后台进程:
DBWR:数据写入进程.
LGWR:日志写入进程.
ARCH:归档进程.
CKPT:检查点进程(日志切换;上一个检查点之后,又超过了指定的时间;预定义的日志块写入磁盘;例程关闭,DBA强制产生,表空间offline)
LCKn(0-9):封锁进程.
Dnnn:调度进程.
内存结构(我们重点讲解的)
内存结构=SGA(系统全局区)+PGA(程序全局区)
SGA就是我们所说的内存调优的主要对象。我们重点就是设置SGA
原则:SGA+PGA+OS使用内存<总物理RAM
1、SGA系统全局区.(包括以下五个区)
A、数据缓冲区:(db_block_buffers)存储由磁盘数据文件读入的数据。
大小: db_block_buffers*db_block_size
Oracle9i设置数据缓冲区为:Db_cache_size
原则:SGA中主要设置对象,一般为可用内存40%。
B、共享池:(shared_pool_size):数据字典,sql缓冲,pl/sql语法分析.加大可提速度。
原则:SGA中主要设置对象,一般为可用内存10%
C、日志缓冲区:(log_buffer)存储数据库的修改信息.
原则:128K ---- 1M 之间,不应该太大
D 、JAVA池(Java_pool_size)主要用于JAVA语言的开发.
原则:若不使用java,原则上不能小于20M,给30M通常就够了
E、 大池(Large_pool_size) 如果不设置MTS,主要用于数据库备份恢复管理器RMAN。
原则:若不使用MTS,5---- 10M 之间,不应该太大
SGA=. db_block_buffers*db_block_size+ shared_pool_size+ log_buffer+Java_pool+size+large_pool_size
原则: 达到可用内存的55-58%就可以了.
2、PGA程序全局区
A、Sort_area_size 用于排序所占内存
B、Hash_area_size 用于散列联接,位图索引
这两个参数在非MTS下都是属于PGA ,不属于SGA,是为每个session单独分配的,在我们的服务器上除了OS + SGA,一定要考虑这两部分
原则:OS 使用内存+ SGA + session*(sort_area_size + hash_area_size + 2M) < 总物理RAM 为好
实例配置
基本掌握的原则是, db_block_buffer 通常可以尽可能的大,shared_pool_size 要适度,log_buffer 通常大到几百K到1M就差不多了
A、如果512M RAM
建议 shared_pool_size = 50M, db_block_buffer* db_block_size = 200M
B、如果1G RAM
建议 shared_pool_size = 100M , db_block_buffer* db_block_size = 400M
C、如果2G
建议 shared_pool_size = 200M , db_block_buffer *db_block_size = 800M
参数更改方式
oracle8i:
主要都是通过修改Oracle启动参数文件进行相关的配置
参数文件位置:
d:\oracle\admin\DB_Name\pfile\init.ora
按以上修改以上参数值即可。
Oracle9i:
两种方式:第一种是修改Oracle启动参数文件后,通过此参数文件再创建服务器参数文件
第二种是直接运行oracle修改命令进行修改。
SQL>alter system set db_cache_size=200M scope=spfile;
SQL>alter system set shared_pool_size=50M scope=spfile
发表评论
-
oracle 命令
2009-02-05 20:30 1011一、ORACLE的启动和关闭 ... -
通过dbms_flashback找回误删除的数据收藏
2009-01-21 11:35 1346在使用DBMS_FLASHBACK时要首先注意以下几个事项: ... -
优化Oracle数据库性能收藏
2009-01-21 11:35 890优化策略 为了保 ... -
Oracle Start With Connect By
2009-01-21 11:33 1572Start With Connect By 是用来实现在一个 ... -
Oracle 表空间操作收藏
2009-01-21 11:32 1009创建表空间: 1、递增 ... -
移动数据文件收藏
2009-01-21 11:32 736移动数据文件: 1、首先使要移动数据文件的表空间离线. ... -
Oracle 死锁会话处理收藏
2009-01-21 11:31 1172--查询所有的死锁: SELECT * FROM V$LOCK ... -
Oracle 9i 打开autotrace on 查看执行计划收藏
2009-01-21 11:31 13331.创建表,通过utlxplan脚本 SQL> @? ... -
如何启用sqlplus的AutoTrace功能收藏
2009-01-21 11:31 847通过以下方法可以把Autotrace的权限授予Everyone ... -
user和schema的区别:
2009-01-21 11:30 1053说穿了其实user是控制权限的,而schema是个容器,非所有 ... -
解决Oracle数据文件和日志文件丢失的问题收藏
2009-01-21 11:29 2102今天不小心误删除了数据库的数据文件和日志文件,在启动数据库时报 ... -
Oracle表段中的高水位线HWM收藏
2009-01-21 11:28 2633在Oracle数据的存储中, ... -
深入了解oracle的高水位(HWM)收藏
2009-01-21 11:26 2273说到HWM,我们首先要简要的谈谈ORACLE的逻辑存储管理.我 ... -
ORACLE 日志文件相关查询收藏
2009-01-21 11:25 11931.查询系统使用的是哪一组日志文件: select * fro ... -
ORACLE热备份恢复手册收藏
2009-01-21 11:22 2332概要 1.1. 本文的目的 为了模拟测试oracle热备份的 ... -
(转)windows命令行下启动oracle
2009-01-21 09:56 1529--总结启动命令如下: lsnrctl [start|stop ... -
小议分析函数中排序对结果的影响(一)
2009-01-12 13:24 928分析函数中经常会包括O ... -
ORACLE10g新特性——全局HASH分区索引
2009-01-12 13:23 1764在10g以前,Oracle的全局索引分区方法只有一种,即范围分 ... -
深入认识Oracle Supplemental logging
2008-12-22 18:35 3144对于有过逻辑standby,streams搭建体验的朋友,肯定 ... -
深入分析Oracle数据库日志文件
2008-12-22 15:19 1000深入分析Oracle数据库日志文件 作者:程永新 发文时间: ...
相关推荐
本文将根据提供的文件信息,深入探讨“Oracle数据库内存参数调优技术的个人总结”中的核心知识点,包括理解Oracle数据库内存结构、关键参数的意义及优化策略。 ### Oracle数据库内存结构概述 Oracle数据库的内存...
Oracle数据库内存参数调优 Oracle数据库是非常优秀的大型数据库系统,但也是非常复杂和灵活的一种大型数据库。随着数据库规模的扩大,用户数量的增加,数据库系统的响应速度会下降,性能问题越来越突出。为了提高...
Oracle数据库内存参数调优是优化数据库性能的关键环节。在Oracle数据库中,内存的合理配置能够显著提高数据处理速度,减少磁盘I/O,进而提升整体系统响应时间。本文将详细介绍Oracle数据库内存结构,重点关注SGA...
Oracle 内存参数调优技术是指在 Oracle 实例中调整内存参数以提高数据库性能的技术。 Oracle 实例由内存结构和进程结构两部分组成。内存结构包括 SGA(系统全局区)和 PGA(程序全局区)两部分,而进程结构包括...
Oracle数据库编程调优手册是一本针对数据库开发者和管理员的重要参考资料,旨在帮助他们提升Oracle数据库的性能和效率。手册涵盖了多个关键领域,包括数据加载优化、UPDATE语句的优化、DELETE操作的改进、DBA级别的...
Oracle数据库应用系统调优是提升系统性能的关键环节,尤其在数据量不断增长的情况下,优化显得尤为重要。本篇文章主要从数据库服务器、网络I/O和应用程序三个方面介绍Oracle数据库的调优方法。 首先,调整数据库...
### Oracle数据库调优配置:两种方案详解 在企业级应用中,Oracle数据库因其稳定性和高效性而被广泛采用。然而,随着数据量的急剧增长和业务需求的不断变化,优化Oracle数据库性能成为确保系统高效运行的关键。本文...
Oracle9i数据库性能调优是确保系统高效运行的关键技术,主要涉及内存管理、I/O优化、分区技术以及索引的合理使用。本文以本钢电能量计量管理系统为例,深入探讨了Oracle9i数据库性能调优的策略和方法。 首先,...
##### 3.5 操作系统参数调优 - **内核参数**:调整操作系统级别的参数,如文件描述符限制、内存分配等,以适应Oracle数据库的需求。 - **文件系统参数**:优化文件系统的配置,如文件系统缓存大小等。 #### 4. ...
1.1 Oracle 9i之前的内存参数调优: - **shared_pool_size**:用于存储PL/SQL代码、SQL语句解析结果等,调整这个参数可以优化Library Cache的性能。如果`reload/pins`比例接近0,表示命中率高,无需调整;若大于1,...
以下是对Oracle数据库性能影响因素及性能调优方法的知识点总结。 1. Oracle数据库性能影响因素 硬件因素: CPU:作为数据库服务器的核心部件,CPU的处理能力直接影响数据库的运算速度和并发处理能力。在多用户...
总之,Oracle数据库性能调优是一个综合性的过程,需要结合操作系统、数据库参数、SQL查询优化等多个方面进行综合考虑和调整。通过细致的监控、科学的分析和合理的优化,可以显著提升数据库的运行效率和服务质量。
在《Oracle数据库的调优》这个主题中,虽然给定的部分内容似乎与Oracle数据库调优无关,但我们可以从中提取出一个通用的概念——模糊数学形态学,这在数据处理和图像分析中有应用,而这些领域往往需要高效的数据存储...
总之,Oracle数据库调优是一个综合性的过程,需要结合SQL编写、索引设计、表结构优化、存储参数调整等多个方面。通过理解这些技巧,开发者和DBA可以显著提高Oracle数据库的运行效率和响应速度,从而提升整体系统性能...
8. **数据库参数调优**:Oracle数据库有许多可配置的初始化参数,它们直接影响数据库的行为。通过监控系统性能并调整相关参数,可以优化数据库的运行。 9. **备份与恢复策略**:高效的备份和恢复策略可以减少对...
Oracle数据库内存优化是一个复杂但至关重要的过程,涉及多个参数的精细调优。通过合理配置SGA和PGA中的各项参数,可以显著提升数据库的响应速度和吞吐量,满足企业级应用的高性能需求。此外,定期监控和分析数据库的...
【Oracle 数据库性能调优】...总结,Oracle数据库性能调优是一个综合性的过程,涉及到多个层面的调整。DBA需要根据实际情况,结合监控工具收集的数据,分析性能瓶颈,采取相应的优化措施,以实现数据库的最佳运行状态。