OracleDBA性能优化8日游笔记(7)

来源:网络收集 时间:2025-07-09 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

找瓶颈(性能指标的判断) 分析原因

选择解决方案(调优)

对知识面和知识体系的理解要广和深 数据库优化: 内存调优 I/O调优 竞争调优 应用调优:

应用语句调优 SQL调优

SQL书写调优 SQL算法调优

所有通过dual表做的查询,每次都是硬解析 应用存储对象调优 索引等 一. 优化思路

优化怎么做:调资源

把会带来竞争的操作从时间和地点上分散 竞争意味着得到的快,得不到的就慢 例如:

从时间上:备份放晚上做(消耗I/O,减少竞争) 从地点上:在前台消耗客户端的CPU,在后台消耗服务器的CPU

越早越好

充分合理的利用资源

让每个动作只去使用自己应用的CPU

从数据库到算法,各个层面的设计达到最好 调什么:

基于数据库的整个应用系统 架构

前台应用 数据库

应用数据库的网络 数据库的操作系统 磁盘

谁调优:参与项目的各阶段的所有人 需求分析人员 设计人员 开发人员 存储管理员 网络管理员

数据库管理员(关键)

大部分性能问题集中在与数据库的交互上

系统管理员

需要各级人员之间的交互沟通 调优的类型:

设计期的调优 正式运行之前

预定义调优(假想式调优) 直到压力测试通过结束 周期性调优(主动式调优)

数据量和并发访问量达到一定程度的时候开始 周期性

根据周期性的收集数据,判断指标是否衰落来调优 被动式调优:

运行过程中出现了问题(如客户提出语句执行慢了) 什么样的系统需要调优:

有数据有人用的系统(生产系统) 很少有人用的一般不需要调优 调优到什么地步结束:

调优是寻找平衡的过程(可能会影响其他动作) 把长处发挥出来同时不让短处变明显 达到性能指标就结束 调优的阶段:

应用设计和开发 功能模块的设计 应用算法

功能模块的划分

做大量逻辑判断的放前台

处理大量数据的部分放后台做 E-R模型的设计

拆分(第三范式)

适当的冗余对性能有好处(性别,政治面貌等) 冗余大考虑拆分

经常在一起访问的不拆,不经常一起访问的可以拆 冗余大又经常一起访问的,根据冗余的唯一值个数拆分(少则拆)

拆多了消耗CPU(外键校验),拆少了冗余多 表设计:

如CHAR与VARCHAR2: 看字段的长度差别有多大 应用开发: 代码规范

书写规则(大小写,回车换行)

有助于写出相同的语句(数据库只做一次解析) 辅助开发人员写好语句 帮开发人员制定数据规范

LIKE查询的首字母确定会走索引,不确定不走索引 数据的大小写,排放顺序 从开发人员了解情况:

查询多还是数据操作多 表的重要性 并发数据多少 。。。

数据库配置

配置参数(instence) 表空间划分(database) 部署应用

创建对象(表,索引等)

选择对象类型和相关参数 测试:

功能测试,性能测试,压力测试 周期性调整 低效时调整

应用调优>设计调优>数据库调优>系统调优>其他 应用与数据库:需供关系

数据库与操作系统:需供关系 调优的常见问题:

糟糕的会话管理(通常跟中间件有关)

糟糕的游标管理(通常是开发人员的错误导致) OPEN忘CLOSE

糟糕的关系设计(通常是没有遵守好规范/或过度遵循规范) 糟糕的应用算法设计(通常与功能模块设计)

糟糕的数据库架构设计(通常与DBA部署数据库有关) 典型安装不调参数 糟糕的语句算法设计

OracleDBA+性能优化8日游笔记——第五天(二) 2010-01-06 15:57

调优阶段2: 调优设计

设计人员和开发人员 调优应用

DBA和开发人员 调优内存 调优I/O 调优竞争

调优操作系统 数据库调优:

Instance:内存,进程(DBWR,LGWR等) Database

最基本原则:

如果某部分不是瓶颈,就不要尝试优化

优化可能会过头,注意协调整个系统的性能

优化时为系统提供足够的资源并且充分合理的使用资源,而不是无节制的扩充资源

优化有时候也意味着合理的分配或者划分任务 性能优化的基本步骤:

1.设立合理的性能优化目标(确立目标) 减少或消除等待

访问最少块数(减少数据访问量) 写好语句 选好算法

把需要的数据放入最少的块中 将数据保留在内存中(I/O减少) 相应时间 吞吐量

单位时间内的数据处理能力 负载量

并发访问量 恢复时间

2.测量记录当前性能(收集信息) 数据库的信息

Statspack报告 统计信息 等待信息 操作系统的信息 IO,内存,CPU 应用级信息

3.确定数据库的瓶颈(等待什么) 平衡性能与数据库的健壮性的需求 影响性能的因素: Raid方式

Raid-5对写操作影响比较大

Raid-1浪费空间单对写操作影响小 复用控制文件

复用重做日志文件 频繁的执行检查点

看系统忙不忙决定 备份数据文件

从频度上减少影响 执行归档

如数据不重要,写操作多,不用归档 异地容灾等 4.确定OS的瓶颈

5.分析瓶颈原因 6.优化所需部分

7.跟踪并实施更改过程 记录实施之前的状态

逐个实施调优方法而不是同时实施大量方法 实施完了,运行已段时间后重新收集统计信息 8.测量并记录当前性能

9.重复3-7,直到满足优化目标 信息收集工具: 操作系统:

CPU:Top(当前时刻)/sar(历史值)等 RAM:vmstat IO:iostat

数据库:(从上到下最新顺序) 动态性能视图 累计值 顺时值

Utlbstal.Sql/ Utlestal.Sql 一段时间内的值 Statspack(9i)

需要安装,不需要了卸载而不是删除

Statspack本质是一个用户和其下的一堆对象 一段时间内的多点信息 图形化

按“最“方式排序

10以后,可以生成STS(造成高负载的语句的结果集) AWR(自动负载仓库)/ADDM(自动数据库诊断监控) 自动收集

收集主机信息

AWR自动调ADDM产生分析报告, AWR 用MMON进程进行收集,

默认每小时收集一次(快照),保留7到8天 存在sysaux表空间,被sysman用户拥有 ADDM发现问题

用OEM在自动工作量资料档案库中修改 收集级别:

BASIC(收集最少) TYPICAL(常用) ALL(收集最多)

BEGIN和END报告中间不能跨越重启 在指导中心能查看ADDM和其他指导 自动的东西可以参照,但不要完全相信 等待事件

如果不用参数就能描述竞争位置就不要参数,否则要参数

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库OracleDBA性能优化8日游笔记(7)在线全文阅读。

OracleDBA性能优化8日游笔记(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/wenku/548480.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219