Oracle DBA日常工作手册.docx
《Oracle DBA日常工作手册.docx》由会员分享,可在线阅读,更多相关《Oracle DBA日常工作手册.docx(68页珍藏版)》请在三一办公上搜索。
1、Oracle DBA日常工作手册概述2第一章 . 事前阶段3一 、 日常工作每天应做工作内容31、工作内容日常环境监控31.1系统运行环境监控31.2数据库运行状况监控32、工作内容日常性能监控42.1 间隔一段时间使用操作系统top等工具监控系统资源动态运行状况42.2间隔一段时间对数据库性能进行监控43、工作内容日常数据库管理133.1一天内间隔一定时间运行133.2 每天工作结束后、系统空闲时运行25二 、日常工作每隔一周工作内容521. 文件整理工作522. 数据库全量备份522.1 Oracle 9i RMAN自动化脚本方式全量备份522.2 Oracle 10g OEM 图形方式创
2、建RMAN全量备份数据库任务523. 根据一周数据增长率分析预留数据文件下一周所需增长空间533.1 SQL脚本方式查看533.2 Oracle 9i OEM 数据文件管理543.3 Oracle 10g OEM 数据文件管理554. 索引使用情况及碎片分析554.1表包含的索引及相关列检查554.2自动化脚本方式对索引进行碎片分析564.3打开索引自动监控开关565. 对用户所有表、索引进行统计分析575.1 查询EAS用户所有表、索引的最新统计分析时间575.2 自动化脚本方式对所有表、索引统计分析575.3 Oracle 10g OEM图形化自定义对所有表、索引统计分析的自动化调度任务5
3、76. 导出表、索引最新统计分析数据637. 性能报告分析64三 、 日常工作每月应做工作内容641. 性能全面分析64全面分析一次STATSPACK报告64空间使用增长的全面分析642. 备份数据转备64四 日常工作数据库第一次安装部署后需做的工作641. Statspack系统快照采集工具初始化642. 创建统计信息导出表653. 运行EAS用户下所有表、索引统计分析,导出基准统计信息654. 创建Oracle10g 逻辑备份dump文件存放目录65第二章 事中阶段66一、Oracle数据库出现问题时需掌握的相关信息661. 问题症状描述662. 问题在什么地方出现663. 问题在什么时间
4、出现664. 问题在什么条件下出现665. 问题涉及的范围676. 问题是否能重现677. 数据库运行环境软、硬件基本信息678. Oracle性能相关67二、Oracle数据库问题的解决途径68概述该文档主要目的是降低现场实施人员及用户Oracle数据库的管理难度,提高Oracle数据库技术能力,文档针对Oracle9i、10g两个版本提供了一套完整的Oracle数据库监控、管理的思路、方法步骤,依照该手册进行Oracle数据库的日常工作,能有效的把握Oracle后台数据库的整体运行健康状况,通过收集相关重要信息分析,能很好的防范即将出现的系统风险,系统出现问题后尽快的定位问题,现场解决一部
5、分常规数据库问题。对其它专业要求比较强的数据库问题,也能为后续Oracle专家深入分析、诊断问题提供规范、完整的信息。文档按问题处于的阶段分两部分事前阶段、事中阶段,事前阶段描述了每天、每周末、每月末针对数据库所需进行的管理工作,如:日常监控,包括有环境监控、数据库运行状况监控、性能监控;日常数据库管理,包括:系统运行快照采集、表空间管理、数据库备份恢复、表、索引统计分析、TOP会话、SQL执行计划信息查看等。涉及有相关图形化管理工具使用方法、数据库自动脚本、命令使用方法。事中阶段描述了数据库发生问题时处理思路,需要收集哪些相关信息。第一章 . 事前阶段一 、 日常工作每天应做工作内容1、工作
6、内容日常环境监控1.1系统运行环境监控查看Oracle 数据文件、控制文件、联机日志及归档日志存放的文件系统或裸设备空间使用情况。重点关注Oracle软件及数据文件所在卷空间使用率:su - oracleAIX、linux查看磁盘空间:df kv HP-UX查看磁盘空间:bdf检测操作系统CPU、内存、交换区、I/O配置状况AIX :CPU、内存、网络、IO、进程、页面交换:topasLinux、HP-UX :CPU、内存、网络、IO、进程、页面交换: top1.2数据库运行状况监控1.2.1 外部检查Oracle实例核心后台进程是否都存在、状态是否正常$ ps -ef|grep ora_查看
7、数据库实例是否能正常连接、访问SQL select status from v$instance;监听是否正常$ lsnrctl status1.2.2 内部是否有表空间出现故障SQL select tablespace_name,status from dba_tablespaces;日志文件是否正常SQL Select * from v$log;SQL Select * from v$logfile;2、工作内容日常性能监控2.1 间隔一段时间使用操作系统top等工具监控系统资源动态运行状况CPU、内存、网络、IO、进程、页面交换等主要活动监控: top、topas、vmstat、iost
8、at等2.2间隔一段时间对数据库性能进行监控2.2.1 Oracle 9i 图形工具Performance Manager监控顶层会话及顶层SQL1 打开OEM控制台,选中要监控的数据库。2 工具中选择 Diagnostic PackPerformance Manager,也可直接选中Top Session或Top SQL。Oracle9i 的Performance Manager工具监控内容主要有:内存的使用情况,IO情况,Oracle数据库进程情况,sql语句运行情况等,主界面如下: 可以通过顶层会话下钻获取到相关SQL执行计划等信息,也可以直接查看TopSql选项获取当前执行最频繁、消耗
9、资源最多的SQL语句 在数据页签下面列出了监控的选项列表,可以根据各类选项对SQL语句进行排序。选中相关SQL语句,单击右键选择“下钻”到“解释计划”查看执行计划: 执行计划显示如下:2.2.2 Oracle10g OEM工具监控顶层会话及获取SQL详细信息登录Oracle10g OEM,选择性能 其它监视链接:顶级活动点击顶级会话中的会话ID 点击SQL ID,查看该顶级会话中SQL的详细信息点击计划标签,查看该SQL语句的详细执行计划浏览该顶层会话对应SQL语句的详细信息2.2.3 字符界面下Sql语句及用户进程信息采集n 通过视图查看当前主要影响性能SQL语句语法模版SELECT * F
10、ROM (SELECT hash_value,address,substr(sql_text,1,40) sql, list of columns, list of derived values FROM V$SQL or V$SQLXS or V$SQLAREA WHERE list of threshold conditions for columns ORDER BY list of ordering columns DESC)WHERE rownum 100000 AND executions 10 ORDER BY buffer_gets DESC)WHERE rownum sele
11、ct sid,serial#,username from v$session;开始跟踪结束跟踪Exec dbms_system.set_ev(9,437,10046,8,用户名);Exec dbms_system.set_ev(9,437,10046,0,用户名);生成的跟踪文件在user_dump_dest目录下 tkprof工具输出跟踪报表信息tkprof /opt/oracle/admin/ytcw/udump/ytcw_ora_1026.trc /opt/oracle/admin/ytcw/udump/ytcw_ora_1026.prf aggregate=yes sys=no sor
12、t=fchela3、工作内容日常数据库管理 3.1一天内间隔一定时间运行3.1.1检查警告日志文件中最新错误信息Linux、Unix系列平台:vi alertsid.log输入:“/ORA” 回车进行查找Windows 平台下使用常用的文本编辑工具即可查看搜索警告日志文件中Oracle错误信息3.1.2系统运行状况快照采集每天根据实际情况,在以下三个阶段手工运行Statspack快照采集,输出快照报表:l 正常工作压力下l 每天业务最高峰期l 特殊业务运行阶段3.1.2.1 Oracle 9i自动化脚本方式快照采集创建当前时间点快照如需采集当前数据库运行状况快照,取20分钟间隔两次运行该脚本。
13、自动执行statspack快照脚本:statspack_auto_exec.sh#!/bin/sh# creator: james_jiang# function: produce statpack snapshotecho Auto Execute Statspack$ORACLE_HOME/bin/sqlplus /nolog EOFconnect perfstat/perfstatexec statspack.snapecho Auto execute statspack successfully!exitEOF输出最近两个快照时间点之间的快照信息报表自动产生最近两个快照时间点统计信息快
14、照脚本:statspack_auto_report.sh#!/bin/sh# creator: james_jiang# function:get statpack reportecho Auto create statspack snapshot!SQLPLUS=$ORACLE_HOME/bin/sqlplusLOGFILE=$ORACLE_HOME/spreport.logREPFILE=$ORACLE_HOME/spreport.lst$ORACLE_HOME/bin/sqlplus -S perfstat/perfstat EOFSET ECHO OFFSET HEADING OFFS
15、ET FEEDBACK OFFSET PAGESIZE 0SET LINESIZE 1000SET TRIMSPOOL ONSPOOL $LOGFILEselect SNAP_ID from (select SNAP_ID from stats$snapshot where INSTANCE_NUMBER=1 order by SNAP_TIME desc) where rownum3;SPOOL OFF;set echo onset feedback onset heading onexitEOFline1=tail -1 $LOGFILEline2=head -1 $LOGFILEecho
16、 line1 is$line1echo line2 is$line2$ORACLE_HOME/bin/sqlplus -S perfstat/perfstat connect target sys/oraclermanconfigure controlfile autobackup on;rmanconfigure controlfile autobackup format for device type disk to f:rman_bak%F.ctl;rmanconfigure snapshot controlfile name to f:rman_baksnap_%F.ctl;Rman备
17、份命令写到一个脚本中,在命令行中执行这个脚本RMAN TARGET / NOCATALOG sys/oracle CMDFILE f: backup_incre_1.rcv LOG f: backup_incre_1.log该命令可设置为crontab(unix/linux),bat批处理任务(Windows),在每天特定的时间点自动运行。增量备份脚本: backup_incre_1.rcvrun allocate channel c1 type DISK ;backup incremental level = 1 format f:rman_bakincre_1_%d_%s_%p.bak(d
18、atabase include current controlfile);backup format f:rman_bakarch%u_%s_%p.bak(archivelog from time sysdate-1 all delete input);显示RMAN备份集信息:RMAN list backupset;注:上述脚本中涉及的文件路径需根据现场环境具体情况进行相应修改。3.2.2.2 Oracle10g OEM图形化方式设置RMAN备份自动执行任务RMAN备份主要参数设置登录10g OEM,选择维护 备份设置磁盘设备备份路径、并行度指定(根据服务器cpu个数匹配)备份策略设置主要是指
19、定备份磁盘位置及备份保留时间,下图设置中为周备份策略考虑,保留最近7天备份。两种RMAN自动调度备份策略1) 使用Oracle建议的自动调度备份策略选择维护调度备份选择“调度Oracle建议的备份”选择备份目标介质,缺省备份到磁盘介质该备份策略内容描述设置该策略执行数据库全量或增量备份的调度时间2) 自定义RMAN自动备份策略选择“调度定制备份”选择备份类型、模式、归档日志、过时备份清理策略 备份目标介质设置(缺省使用前面“备份设置”中设置的参数)备份自动执行的调度时间设置(通常设置在系统空闲时进行,如晚上12点过后)备份设置信息复查,确定后提交作业通过查看作业可以了解备份任务进展情况。3)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle DBA日常工作手册 DBA 日常工作 手册
链接地址:https://www.31ppt.com/p-1894251.html