系统参数设置-Oracle性能优化(精)

合集下载

oracle数据库应用系统的性能优化

oracle数据库应用系统的性能优化

户 进 程 所 需 的 所 有数 据 都 是 经 过 缓 冲 区高 速 缓 存
独立 。Orce al具有 良好 的硬 件环 境独 立性 ,支持 各
( 山职业技术学院,唐山 0 3 0 ) 唐 6 0 0 摘 要 :o a l数据库性能优化对于保证 系统安全 ,信息安全 ,业务正常运作具有重要影 响。全文首先 r ce 简要介绍了o a l r ce 数据库及特点 ,然后对数据库性 能的评价指标做出一般性概述。随后从C U P 利用和内存分 配这 两方面阐述了数据库性能优化 的主要方向 。最后介绍了o a l r ce 数据库应用系 统性能优 化技 术 ,Is l  ̄ a语句优化 ,o a l内存调整 ,o a l 空间调整 。 D r ce r ce 表
行 ,保 险 ,烟 草 ,石 油 等 大数 据 量 ,对 安 全 性 要
求较 高 的企 业 。其 特 点主 要体 现在 :1 )支持 大数
据库 、 多用 户的 高性 能事 务处理 O al支持最 大数 rce
据库 ( 百T 几 B),可充 分 利 用硬 件 设 备 。支 持 大 量 用 户 同 时在 同一 数 据 上 执 行各 种 应 用 ,并 使数 据争 用 最 小 ,保 证 数 据 的一 致 性”。2 )硬 件 环境
关键 词 :o a l数据库 ;性能优化 ;内存分 配 r ce 中图分类号 :T 9 P3 2 文献标识码 :A 文章编号 :1 0 - 1 4 2 1 )8 0 0 — 3 9 0 ( 0 0 — 24 0 0 3 0
Doi 1 . 9 9 J is 1 0 -0 4. 0 . 8 6 : 3 6 / . n. 9 1 0 s 0 3 2 1 0 .4 0
、 1
勺 化

ORACLE 性能优化

ORACLE 性能优化

ORACLE 数据库性能优化参考书目:《ORACLE 9i Database Performance Tuning Guide and Reference》《ORACLE 9i Database Reference》《ORACLE 9i SQL Reference》《ORACLE 9i Database Administrator’s Guide》一、数据库实例创建过程参数确定在创建数据库实例过程中,需要确定以下几个参数:1. 数据块大小(DB_BLOCK_SIZE)该参数指明了ORACLE所处理的数据存贮于数据文档以及SGA内存中的数据块大小。

该参数的可选择的范围为:4k,8k,16k,32k,64k。

对于OLTP系统而言,取值可以为4K或8K,对于DSS系统而言,则可以取较大的数据,如32K或64K 建议统一取8K(即8192)说明DB_BLOCK_SIZE的大小将影响创建表时的EXTENT的大小。

例如指定db_block_size=16K,某表空间的EXTENT MANAGEMENT 为local autoallocate,则其系统将extent的大小最小指定为1M.所以将可能导致空间的浪费。

2. 字符集(Character set)该参数确定数据库以何种字符集来存贮CHAR以及V ARCHAR、V ARCHAR2等字符类型的值。

对于ORACLE数据字典中的字符(如表及字段的COMMENT 内容)具有同样的作用。

因此需要考虑如字符集的使用。

对于国际项目,因为数据库中的comment内容(包括表及字符、存贮过程中的中文字符等内容)可能性需要以中文存贮,而用户业务数据使用的字符可能性是使用本地的语言,基于此,该参数需要选择支持UNICODE的字符编码的字符集。

目前ORACLE9i支持以下二种UNICODE字符集:⏹UTF8⏹AL32UTF8建议统一取AL32UTF83. 扩展段管理(EXTENT MANAGEMENT)该参数指明表空间中的扩展段的管理方式。

dbvisualizer oracle参数-概述说明以及解释

dbvisualizer oracle参数-概述说明以及解释

dbvisualizer oracle参数-概述说明以及解释1.引言1.1 概述概述:在数据库管理工具中,dbvisualizer是一个功能强大的工具,可用于管理多种数据库,包括Oracle数据库。

在使用dbvisualizer连接Oracle 数据库时,设置正确的参数是非常重要的,可以有效提高数据库的性能和效率。

本文将重点讨论关于在dbvisualizer中设置Oracle参数的相关知识,并介绍如何优化这些参数以达到更好的数据库管理效果。

通过本文的学习,读者可以更好地了解如何在dbvisualizer中管理Oracle数据库,并掌握优化参数的方法,从而提升数据库的性能和管理效率。

1.2 文章结构文章结构部分主要包括引言、正文和结论三个部分。

- 引言部分介绍了文章的背景和意义,概述了文章要探讨的内容,说明了文章结构和目的。

- 正文部分详细介绍了dbvisualizer的简介,以及如何设置和优化Oracle参数的方法。

- 结论部分对文章进行总结,强调文章的实践意义和展望未来可能的发展方向。

1.3 目的:本文旨在介绍在使用dbvisualizer过程中如何设置和优化Oracle参数。

通过深入了解Oracle参数的设置和优化方法,读者可以更好地利用dbvisualizer工具,提高数据库性能和效率。

同时,希望读者能够通过本文了解到如何根据自身需求和环境调整Oracle参数,以达到最佳的数据库运行状态。

最终目的是帮助读者更好地应用dbvisualizer工具,并有效地管理和优化Oracle数据库。

2.正文2.1 dbvisualizer简介dbvisualizer是一款功能强大的数据库管理工具,提供了跨平台的数据库管理解决方案。

该工具支持多种数据库系统,包括Oracle、MySQL、SQL Server、PostgreSQL等,能够帮助用户方便地管理和操作数据库。

dbvisualizer具有直观易用的界面,用户可以通过简单的操作实现数据库的连接、查询、数据编辑等功能。

论Oracle数据库的性能优化问题

论Oracle数据库的性能优化问题
的性能优化问题
马 红 云
( 中国民用航 空大连 空中交通管理站 辽宁大连 1 1 6 0 3 3 )
摘要 : Or a c l e 数 据库作 为 目前适 用性 最好 的关 系数据库 引擎之 一, 能够 支持 各种业 务形式 、 处理各 种复 杂事务 , 得 到极 为广泛 的应 用。
1对数据库服务器 内存分配的调整
由于对服务器 内存参数 的调整对o r a c l e 的性能影响显著 , 它成 为O r a c l e  ̄据库性能调 优的首选对象。 服务器 内存参数 的调整主要 是对数据库系统全局 区的调整 , 系统全局 区包括共享池、 数据缓冲 区、 日志缓冲区 。 其 中最主要的是对数据缓冲区和共享池 的参数调
3 . 2表 的分 区和 并行 技 术
如果必须要在数据库运行特别耗时的操作。 应尽量地把这样的 操作分解 , 严格 限制操作所涉及的记录数 , 并设法使操作并行 , 充分 地提高 执行效率 。 ( 1 ) 使用分区 分区技术有两个潜在的好处: 提高查询性能和提 高数据 库可用性 。 数据库查询 时, 优化器知道那些分区包含查询所 要的数据 。 而其它分 区数据将不会被读取 , 从而查询 任务将更快完 成。 许 多 管 理 工 作 可 在 只 一个 分 区上 进 行 , 而 不 影 响 其它 分 区 的数 据。 例 如 可 以选 择 只 删 除一 个 表 分 区 中 的数 据 。 可对 表 分 区进 行 再 分割 , 把一个表分区迁移到不同的表 空间上 。 可只对 一个表分 区进 行分析 统计 。 表分区的这 些特性 。 ( 2 ) 使用并行 。 Or a c l e 数据库 中几乎 所有的操作都 支持 并行 特 性, 包括查询、 插入 、 和数据加载。 并行选项可 以使多个处理器 同时 处理一条命令 , 在创建库数据库对象 时可以设定 并行参数 , 也可在 查询语句 中重新设 。

浅谈ORACLE数据库的性能优化

浅谈ORACLE数据库的性能优化
V ̄ SA t YST T视 图 中获 得 。 S
内存是 O A L R C E数据库体系结构中最为重要 的部分之一 , 也是影 响 数据库性能 的第一个 因素 。在 O A L 数据 库中 , R C E 服务器 内存直接影响 数据库 的运行 速度 ,按照系统对 内存 的使用方法 , R C 数据库 的内 O AL E 存 可 以分 为 系统 全局 区 ( G ) S A ,程序全 局 区 ( G ) P A 、排序 区 (O T SR
12 利用初始化 参数调整 内存 .
A mn t t , d i s a r 以下简称 D A 来 讲 , ir o B ) 如何监 控 、 调整 服务 器 和数据库 性 能, 防止出现数据瓶颈 , 使数据库保持最佳性能 , 限的计算 机系统资 让有 源为更多 的用户服务 ,就显得尤 为重 要 ,也是 D A 日 B 常维护 的基本内 容。 数据库性能调整设计数据库软 、 件的方方 面面 , 硬 笔者根据工作实践 仅对其 中一些方法进行探讨 。
在 O C E的初始化文件 I ISDO A中有些初始 化参 数可 以调 A R L NT I .R 整 O C E的 内存使 用情况 。参 数 D — L C _ I E与数据块 大小有 A R L BBO KS Z 关 , S A大小和数据库性 能的决定 因素 , 是 G 每个缓 冲区的大小等于该参 数 的大小 。通过调整该参数可以提高系统的命 中率 , 有效减少 I / O冲突 。 在 数据库安装过程 中就要对该参数进行设 置 , 一般大型的企业级应用 系
地对 数据 库进 行性 能优 化 ] 。因此 ,对 于数据 库 管理 员 ( aaB s D t ae
及用户全局区( S RG O A R A 3 U E L B LA E ) 个部分 , 其中库缓 冲区含有 S L Q 语句的分析码 、 执行计划 ; 数据 字典缓 冲区含有从数据字典 中得到 的表 、 列定义、 权限; 用户全局 区包含用户的 M S T 会话信息 。

Oracle数据库性能优化方案

Oracle数据库性能优化方案
化 方案 。


词: 数据库 优 化; rc ;G IO O al S A; e / 文献 标识 码 : A
中 图分 类 号 : P3 1 1 T 1, 3
O p i i a in o r ce da a s r o m a e tm z to fO a l t ba e pe f r nc
Abs r c : e o tmiai n o aa a e p roma c r c l n u n e h f ce to e a in o h n t a t Th p i z to fd t b s ef r n e die t i f e c st e ef i n p r to ft e e — y l i tr aa a e a p ia in s se ie d t b s p lc to y t m,S me o he Or ce d t b s p r to s a d o tmii d l r i— o ft a l a a a e o e ai n n p i zng mo e s ae d s c s e fc sn n t e me r lo ai n a d d s /O p i z t n. t z d p o r ms o TP a d u s d,o u i g o h mo y alc to n ik I o tmia i Op i e r g a fOL n o mi daa wa e o s e o a c r r p s d frdi e e td t r c s i g me h d . t r h u e p r r n e a e p o o e o f r n a a p o e sn t o s fm f K e r : aa a e o i z t n; a l S y wo ds d tb s pt miai o Or c e; GA ;/O I

Oracle内存参数调优设置

Oracle内存参数调优设置

Oracle内存参数调优设置Oracle 数据库系统中起到调节作⽤的参数叫初始化参数,数据库管理员根据实际情况需要适当调整这些初始化参数以优化Oracle系统。

1 主要系统参数调优介绍 2 系统内存参数的分配 2.1 Oracle 实例= 内存结构 + 进程结构 内存结构 = SGA + PGA SGA(系统全局区):⽤户存储数据库信息的内存区,该区域为数据库进程所共享。

它包含服务器的数据和控制信息,主要包含⾼速数据缓冲区、共享池、重做⽇志缓存区、Java池,⼤型池等内存结构。

SGA的设置,理论上SGA的⼤⼩应该占OS的内存的 1/3-1/2左右。

SGA + PGA + OS使⽤的内存 < 总的物理内存 查看当前系统SGA的信息select name,bytes/1024/1024 as "Size(M)"from v$sgainfo; 根据查询信息显⽰当前还有148M可⽤的SGA内存,系统当前的内存配置并不是最优的,我们在实际使⽤过程中根据情况可以重新分配内存。

2.2 SGA的设置原则 SGA = (db_block_buffers * db_block_size) + (shared_pool_size + large_pool_size + java_pool_size + log_buffers) (1)缓冲区⾼速缓存(database_buffer_cache):主要存储由磁盘数据⽂件写⼊的数据 ⼤⼩:db_block_buffers * db_block_size分配原则:缓冲区⾼速缓存的调整,⽤户进程所存取的所有数据都是经过缓冲区⾼速缓存来存取,所以该部分的命中率,对性能⾄关重要。

缓冲区⾼速缓存的使⽤情况记录在动态性能表v$sysstat中,可通过查询该表来了解其活动情况,以决定如何调整。

select name,value from v$sysstat where name in ('dbblock gets','consistent gets','physical reads');dbblock gets和consistent gets的值是请求数据缓冲区中读的总次数。

Oracle数据库性能优化与案例分析

Oracle数据库性能优化与案例分析
技术创新,变革未来
Oracle数据库性能优化与案例分析
性能优化探讨
• 原因:为什么? • 慢(响应时间) • 慢(吞吐量)
性能优化探讨
• 目的:为了什么? • 快(响应时间) • 快(吞吐量)
性能优化之案例分析
• 案例之方法论 • 案例之登录访问 • 案例之资源 • 案例之锁
性能优化方法论发展
• 登录输入指标测量 • Logons:= EndSnap. logons cumulative– StartSnap. logons
cumulative。 • Logons Per Second:= Logons / TimeInterval
案例之登录访问
登录输出指标测量:
Logon Response Time:= Network Response Time * 10 + Native TCP Logon :=Network Response Time * 10 + Listener Response Time + Native IPC Logon Time 。
案例之登录访问
• 例:

某医院HIS业务系统的账户登录操作异常缓慢,部分情况下
甚至会出现长时间的卡壳情况,业务影响主要发生在每天早上
的上班时刻。
案例之登录访问
优化过程: • 账户登录过程一般涉及到在账户表格以及对应日志表格上的冲
突,比如Buffer busy waits或者TX lock。AWR未体现该特征。 • AWR报告显示connection management call elapsed time时间偏长
成功率:98% 高 失败率:2% 低
失败人数:500*2%=10
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、SGA 1、Shared pool tunning Shared pool的优化应该放在优先考虑,因为一个cache miss在shared pool中发生比在data buffer中发生导致的成本更高,由于dictionary数据一般比library cache中的数据在内存中保存的时间长,所以关键是library cache的优化。

Gets:(parse)在namespace中查找对象的次数; Pins:(execution)在namespace中读取或执行对象的次数; Reloads:(reparse在执行阶段library cache misses的次数,导致sql需要重新解析。

1)检查v$librarycache中sql area的gethitratio是否超过90%,如果未超过90%,应该检查应用代码,提高应用代码的效率。

Select gethitratio from v$librarycache where namespace=’sql area’;
2 v$librarycache中reloads/pins的比率应该小于1%,如果大于1%,应该增加参数shared_pool_size的值。

Select sum(pins “executions”,sum(reloads “cache misses”,sum(reloads/sum(pins from v$librarycache; reloads/pins>1%有两种可能,一种是library cache空间不足,一种是sql中引用的对象不合法。

3)shared pool reserved size一般是shared pool size的10%,不能超过50%。

V$shared_pool_reserved中的request misses=0或没有持续增长,或者free_memory 大于shared pool reserved size的50%,表明shared pool reserved size过大,可以压缩。

4)将大的匿名pl/sql代码块转换成小的匿名pl/sql代码块调用存储过程。

5)从9i开始,可以将execution plan与sql语句一起保存在library cache中,方便进行性能诊断。

从v$sql_plan中可以看到execution plans。

6)保留大的对象在shared pool中。

大的对象是造成内存碎片的主要原因,为了腾出空间许多小对象需要移出内存,从而影响了用户的性能。

因此需要将一些常用的大的对象保留在shared pool中,下列对象需要保留在shared pool中: a. 经常使用的存储过程; b. 经常操作的表上的已编译的触发器 c. Sequence,因为Sequence移出shared pool后可能产生号码丢失。

查找没有保存在library cache中的大对象: Select * from
v$db_object_cache where sharable_mem>10000 and type in
('PACKAGE','PROCEDURE','FUNCTION','PACKAGE BODY' and kept='NO'; 将这些对象保存在library cache中:Execute dbms_shared_pool.keep(‘package_name’; 对应脚本:dbmspool.sql 7查找是否存在过大的匿名pl/sql代码块。

两种解决方案:A.转换成小的匿名块调用存储过程 B.将其保留在shared pool中查找是否存在过
大的匿名pl/sql块: Select sql_text from v$sqlarea where command_type=47 and length(sql_text>500; 8)Dictionary cache的优化避免出现Dictionary cache的misses,或者misses的数量保持稳定, 只能通过调整shared_pool_size来间接调整dictionary cache的大小。

Percent misses应该很低:大部分应该低于2%,合计应该低于15% Select su
m(getmisses/sum(gets from v$rowcache; 若超过15%,增加shared_pool_size的值。

相关文档
最新文档