文档介绍:数据库--自我管理数据库
Oracle 数据库 10g: 自我管理的数据库
Leng Leng Tan
高级总监
讲座编号:1064
议程
主要的可管理性挑战
Oracle 的管理方案
可管理性革命 — Oracle 数、MTTR
灾难恢复
应用程序和 SQL 管理
优化器统计信息 响应时间
吞吐量 模式/索引
系统资源管理
CPU 利用率
内存池
过程
智能
基础架构
应用程序
和 SQL 管理
系统
资源管理
空间管理
备份和
恢复管理
存储管理
数据库
控制
数据库管理
Oracle 数据库 10g — 自我管理的数据库
智能基础架构
自动负载信息库
自动维护任务基础架构
服务器生成警报基础架构
顾问程序基础架构
自动负载信息库
数据库的“数据仓库”
代码方法
自动维护任务
预打包、资源控制
服务器生成的警报
推送和拖拉、适时、随时可用
顾问程序基础架构
集成、一致
自动数据库诊断监控器 (ADDM)
计算机内的性能专家
提供数据库范围的性能诊断,包括 RAC
在每次获取负载信息库快照时自动运行
提供影响及益处分析
提供信息和原始数据比较
使用时间模型集成所有组件
智能基础架构
应用程序和 SQL 管理
系统资源管理
空间管理
备份和恢复管理
存储管理
数据库管理
ADDM 的体系结构
SQL顾问程序
高负载 SQL
IO / CPU 问题
RAC 问题
Automatic Diagnostic Engine
自动负载
信息库中的快照
自我诊断的引擎
系统资源
建议
网络 + 数据库配置建议
设计数据库编码方式方法,以生成时间和等待模型
数据库中的自我诊断引擎 — 数据库性能的关键
分类树 — 基于 Oracle 数十年的性能调整技术
实时结果
查明根本原因以及没有问题的区域
还可以手动运行
性能诊断:以前与现在的情况
以前
检查系统利用率
查看等待事件
观察闩锁争用情况
查看共享池和库缓存闩锁的等待情况
检查 v$sysstat(难以操作)
查看 “parse time elapsed” > “parse time cpu” 以及硬分析数量超过正常的情况
通过以下方法识别 SQL
识别具有很多硬分析的会话并跟踪它们,或者
在 v$sql 中检查具有相同散列计划的多个语句(难以操作)
检查所访问的对象并查看 SQL
通过观察 SQL 包含文字的情况来识别“硬分析”问题
支持游标共享
Oracle10g
查看 ADDM 建议
ADDM 建议使用 cursor_sharing
情况:硬分析问题
应用程序和 SQL 管理
高效执行 SQL 的关键:Oracle 基于成本的优化器
经过验证的技术
十年以上的产品使用
被所有高层次的应用程序供应商所采用
完善的功能
自动收集对象和系统(CPU、IO、高速缓存)统计信息
全套访问路径、适应性搜索策略
基于成本的转换
自动分配内存及并行处理
已有版本优化器统计信息
智能基础架构
应用程序
和 SQL 管理
系统
资源管理
空间管理
备份和
恢复管理
存储管理
数据库管理
仍旧面临的挑战
如何快速找出复杂查询的最佳计划?
由相关性、复杂的判定选择性而导致的次最佳计划
什么是“不良”的 SQL?
如何在打包的应用程序中处理“不良”的 SQL?
如何“全局”地优化整个应用程序的 SQL 语句?
添加索引可能对单个语句有帮助,但它对应用程序其余部分的影响如何
自动调整优化器
识别“不良”的 SQL
自动获取负载
自动识别高负载 SQL
前 N 个最消耗资源的 SQL 语句
高负载 SQL
打包的
应用程序
可定制的
应用程序
自动调整优化器
自动 SQL 调整
以往执行所积累的经验
动态采样、部分执行技术
描述 SQL 语句,反馈到优化器
对 SQL 文本不作更改
SQL描述文件
打包的
应用程序
+
调优的 SQL
高负载 SQL
打包的
应用程序
可定制的
应用程序
自动调整优化器
自动 SQL
调整
自动调整优化器
自动 SQL 分析
优化器解释决策点
为不良的 SQL、陈旧的统计信息、不良模式提供建议
SQL建议
可定制的
应用程序
+
调优的 SQL
高负载 SQL
打包的
应用程序
可定制的
应用程序
自动调整优化器
自动 SQL
分析
自动调整优化器
SQL 访问顾问程序
对访问路径的建议
索引、物化视图、物化视图的索引
考虑整体负载
考虑对插入/更新/删