数据库性能监控之问题发现及解决办法.ppt
- 文档编号:1759018
- 上传时间:2022-10-23
- 格式:PPT
- 页数:51
- 大小:1.26MB
数据库性能监控之问题发现及解决办法.ppt
《数据库性能监控之问题发现及解决办法.ppt》由会员分享,可在线阅读,更多相关《数据库性能监控之问题发现及解决办法.ppt(51页珍藏版)》请在冰豆网上搜索。
Oracle数据库监控,主讲:
kevin.zhang,问题发现及解决方法,性能监控的必要性数据库常见问题分析调优工具的历史变迁诊断的六种方法监控系统设计问题及讨论,讨论点,监控的必要性,是否稳定?
实时状态?
重复故障?
是否扩展?
是否安全?
DBA工作现状,故障无影无踪,问题得不到根本解决,数据库常见问题分析系统问题程序问题数据库问题,CPU瓶颈vmstat-n3sar-u210sar-q210较小的内存sga_targetpga_aggregate_targetMemory_target(11g)I/0吞吐能力iostatsard210vmstat-waI/O等待严重,系统问题,应用程序问题频繁的建立连接大量的SQL软,硬解析session_cached_cursors避免软解析Valuebind避免硬解析并发连接问题过多并发操作,长时间占用共享资源,导致其他会话无法得到需要的资源,锁,缓存而处于等待状,造成应用的无响应现象,程序问题,数据库配置问题无常,短暂的性能问题数据库性能日益下降效率低或高负载的SQL语句SQL优化后出现不可意料的性能下降,数据库问题,调优工具的历史变迁,起步阶段(V5)Debugcode小有建树(V6)Counters/RatioBSTAT/ESTATSQL*Trace渐进式发展(V7)出现了WaitEventcounters向timers的变迁,快速发展(8i)扩大数据搜集范围STATPACK逐步完善(9i)更精细的收集-Sessiontuningusing10046SQLtraces更加全面的STATSPACK智能化、自动化开始初现日渐成熟(10g)自动化收集更加广泛的收集保留一段时间的历史提供了:
ASH,AWR,ADDM,EM等功能调用形成了越来越完善的性能优化诊断工具,诊断的六种方法,动态性能视图-性能诊断的基础数据来源v$sysstatv$sessionv$sessstatv$sgastatv$filestatv$undostatv$waitstatv$lockv$latchv$sqlv$librarycachev$processesv$session_longopsv$session_wait,案例-1:
利用的动态性能视图发现占CPU高的数据库用户SQL:
SELECTn.username,s.sid,s.value,FROMv$sesstats,v$statnamet,v$sessionnWHEREs.statistic#=t.statistic#ANDn.sid=s.sidANDt.name=CPUusedbythissessionORDERBYs.valueDESC;,案例-2:
数据库表空间监控SQL:
见备注结果:
TABLESPACE_NAMESUM_SPACE(M)SUM_BLOCKSUSED_SPACE(M)USED_RATE(%)FREE_SPACE(M)FREE_RATE(%)-UNDOTBS165832037.557.6927.542.31USERS1012808.8188.11.1911.9SYSTEM6908832068599.2850.72SYSAUX618.6979192586.8894.8631.815.14TEMP5469125410000,等待事件性能优化的核心v$system_event/v$session_event/v$session_wait竞争即等待从v$system_event中发现系统问题从v$session_event中发现会话问题从v$session_wait的参数中找到竞争对象,主要等待事件缓冲区忙等待dbfilescatteredreaddbfilesequentialreadfreebufferwaitslatchfreeeng:
TX-rowblockcontention,缓冲区忙等待常见原因是对属于表和索引的数据块的争用,以及对段头的争用也可能发生在回退段和回退段块的争用SQL定位争用发生的位置SELECTclass,countFROMv$waitstatWHEREcount0ORDERBYcountDESC;,dbfilescatteredread全表扫描或索引快速扫描V$FILESTATphyrdsPhyblkrddbfilesequentialread索引读或者等待物理I/O调用返回时在统计数据极大的情况下,结合磁盘I/O分析,freebufferwaits数据写入进程跟不上对缓冲区高速缓存的请求诊断SGAdb_writer_processeslatchfreewaiteventlatch保护SGA中共享数据结构sharedpoollatchcachebuffersLRUchain,STATPACK快速定位全面分析,Statspack的安装$ORACLE_HOME/rdbms/admin/spcreate.sql收集统计信息$ORACLE_HOME/rdbms/admin/statspack.snap自动收集统计信息$ORACLE_HOME/rdbms/admin/spauto.sql生成报表$ORACLE_HOME/rdbms/admin/spreport.sql要收集计时信息TIMED_STATISTICS=True,STATPACK内容,Oracle10g新诊断工具ASH活动会话历史记录v$active_session_historyAWR自动负荷信息库dba_hist_*ADDM以AWR为基础,输出对性能问题的描述及建议的解决方法ADDR,ActiveSessionHistory每秒钟自动从内存中获取的活动会话信息,不保存通过ashrpt.sql可以产生ash分析报告,发现某个时段的TOP值(TopEvents/TopSQL/TopSessions/TopObjects/Files/Latches)SQL:
找到157会话当前执行的SQL语句selecta.sql_textfromv$sqlwheresql_idin(selectsql_idfromv$active_session_historywheresession_id=157);,查找数据库的瞬间问题,示例-ASH报告,示例-ASH报告continue,示例-ASH报告continue,AutomaticWorkloadRepository-自动负荷信息库,AWR是Oracle10g及以后版本数据库自动化管理的基础架构自动捕获工作负载数据默认情况下,每隔60分钟保存一次,或者手动保存7天的数据dba_hist_*存储在新SYSAUX表空间内服务器自动管理空间要求自动清除旧数据存储不同类别的数据:
基本统计,例如物理读取SQL统计,例如磁盘读取(每个sql语句)量度,例如,物理读取数量/秒通过awrrpt.sql可以产生与statspack类似的性能差异报告,示例-AWR报告,示例-AWR报告continue,AutomaticDatabaseDiagnosticMonitor,SQLAdvisor,High-loadSQL,IO/CPUissues,RACissues,SnapshotsinAutomaticWorkloadRepository,SystemResourceAdvice,Network+DBconfigAdvice,Self-DiagnosticEngineinsideDB,ADDM诊断的关键问题高代价的SQL语句I/O性能问题锁定和并发问题额外的解析资源瓶颈过少的内存分配连接管理问题,如频繁登陆/注销活动,ADDM分析结果Statistics_level(typical或者all)dbms_advisor.get_task_reportSELECTdbms_advisor.get_task_report(task_name,TEXT,ALL)FROMdba_advisor_tasksWHEREtask_id=(SELECTmax(t.task_id)FROMdba_advisor_taskst,dba_advisor_loglWHEREt.task_id=l.task_idANDt.advisor_name=ADDMANDl.status=COMPLETED$ORACLE_HOME/rdbms/admin/addmrpt.sql,示例-ADDM报告,示例-ADDM报告continue,AutomaticDatabasedifferenceReport基于基线的理念,对比比单纯的报告更能够说明问题比基线更灵活,产生报告时随意选择对比基线通过awrddrpt.sql可以获取性能异常时间与正常时间段AWR报告的对比值,能够快速发现性能差异,从而定位问题,示例-ADDR报告,提示(hints)Oracle很强大的工具,优化SQL的利器,能够强制SQL的执行算法,确保SQL执行按照我们希望的执行计划。
典型的hitsFIRST_ROWS,ALL_ROWS,RULEFULL(tab)INDEX(tabindex)NO_INDEX(tabindex)USE_NL(tab)USE_MERGE(tab.)USE_HASH(tab1tab2)PARALLEL(table,),监控架构,主机与数据库性能数据,收集层,数据分析,建立监控,分析层,展示层,架构图,DBServer,MonitorServer,辅助服务器,MonitorCenter,监控数据流,收集层,AgentShell+Crontab监控数据:
系统磁盘状态表空间状态信息系统负载,数据库负载CPU使用率OracleAlert日志OS日志采集数据传输SSH节点间通信信任,分析层,邮件报警sendmail短信报警飞信API数据分析Shell脚本,标准接口架构,统一的数据结构统一的接口程序短信报警邮件报警文件传输文件同步rsync+crontabscc,标准接口架构图示,接口程序或配置文件,接口程序,MonitorServer,接口程序或配置文件,展示层,公共接口MobilePhoneE-mailWeb展示Nagio系统服务状态开发监控插件Cacti走势图,Nagio,Cacti,淘宝数据库监控平台,SQL维度分析,Q&A,谢谢!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 性能 监控 问题 发现 解决办法