DBA日常维护工作手册参考.doc

上传人:wj 文档编号:1215703 上传时间:2023-04-30 格式:DOC 页数:60 大小:5.41MB
下载 相关 举报
DBA日常维护工作手册参考.doc_第1页
第1页 / 共60页
DBA日常维护工作手册参考.doc_第2页
第2页 / 共60页
DBA日常维护工作手册参考.doc_第3页
第3页 / 共60页
DBA日常维护工作手册参考.doc_第4页
第4页 / 共60页
DBA日常维护工作手册参考.doc_第5页
第5页 / 共60页
DBA日常维护工作手册参考.doc_第6页
第6页 / 共60页
DBA日常维护工作手册参考.doc_第7页
第7页 / 共60页
DBA日常维护工作手册参考.doc_第8页
第8页 / 共60页
DBA日常维护工作手册参考.doc_第9页
第9页 / 共60页
DBA日常维护工作手册参考.doc_第10页
第10页 / 共60页
DBA日常维护工作手册参考.doc_第11页
第11页 / 共60页
DBA日常维护工作手册参考.doc_第12页
第12页 / 共60页
DBA日常维护工作手册参考.doc_第13页
第13页 / 共60页
DBA日常维护工作手册参考.doc_第14页
第14页 / 共60页
DBA日常维护工作手册参考.doc_第15页
第15页 / 共60页
DBA日常维护工作手册参考.doc_第16页
第16页 / 共60页
DBA日常维护工作手册参考.doc_第17页
第17页 / 共60页
DBA日常维护工作手册参考.doc_第18页
第18页 / 共60页
DBA日常维护工作手册参考.doc_第19页
第19页 / 共60页
DBA日常维护工作手册参考.doc_第20页
第20页 / 共60页
亲,该文档总共60页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

DBA日常维护工作手册参考.doc

《DBA日常维护工作手册参考.doc》由会员分享,可在线阅读,更多相关《DBA日常维护工作手册参考.doc(60页珍藏版)》请在冰点文库上搜索。

DBA日常维护工作手册参考.doc

OracleDBA日常维护工作手册参考

概述 2

第一章.事前阶段 3

一、日常工作-每天应做工作内容 3

1、工作内容-日常环境监控 3

1.1系统运行环境监控 3

1.2数据库运行状况监控 3

2、工作内容-日常性能监控 4

2.1间隔一段时间使用操作系统top等工具监控系统资源动态运行状况 4

2.2间隔一段时间对数据库性能进行监控 4

3、工作内容-日常数据库管理 13

3.1一天内间隔一定时间运行 13

3.2每天工作结束后、系统空闲时运行 25

二、日常工作-每隔一周工作内容 52

1.文件整理工作 52

2.数据库全量备份 52

2.1Oracle9iRMAN自动化脚本方式全量备份 52

2.2Oracle10gOEM图形方式创建RMAN全量备份数据库任务 52

3.根据一周数据增长率分析预留数据文件下一周所需增长空间 53

3.1SQL脚本方式查看 53

3.2Oracle9iOEM数据文件管理 54

3.3Oracle10gOEM数据文件管理 55

4.索引使用情况及碎片分析 55

4.1表包含的索引及相关列检查 55

4.2自动化脚本方式对索引进行碎片分析 56

4.3打开索引自动监控开关 56

5.对用户所有表、索引进行统计分析 57

5.1查询EAS用户所有表、索引的最新统计分析时间 57

5.2自动化脚本方式对所有表、索引统计分析 57

5.3Oracle10gOEM图形化自定义对所有表、索引统计分析的自动化调度任务 57

6.导出表、索引最新统计分析数据 63

7.性能报告分析 64

三、日常工作-每月应做工作内容 64

1.性能全面分析 64

全面分析一次STATSPACK报告 64

空间使用增长的全面分析 64

2.备份数据转备 64

四日常工作-数据库第一次安装部署后需做的工作 64

1.Statspack-系统快照采集工具初始化 64

2.创建统计信息导出表 65

3.运行EAS用户下所有表、索引统计分析,导出基准统计信息 65

4.创建Oracle10g逻辑备份dump文件存放目录 65

第二章事中阶段 66

一、Oracle数据库出现问题时需掌握的相关信息 66

1.问题症状描述 66

2.问题在什么地方出现 66

3.问题在什么时间出现 66

4.问题在什么条件下出现 66

5.问题涉及的范围 67

6.问题是否能重现 67

7.数据库运行环境软、硬件基本信息 67

8.Oracle性能相关 67

二、Oracle数据库问题的解决途径 68

概述

该文档主要目的是降低现场实施人员及用户Oracle数据库的管理难度,提高Oracle数据库技术能力,文档针对Oracle9i、10g两个版本提供了一套完整的Oracle数据库监控、管理的思路、方法步骤,依照该手册进行Oracle数据库的日常工作,能有效的把握Oracle后台数据库的整体运行健康状况,通过收集相关重要信息分析,能很好的防范即将出现的系统风险,系统出现问题后尽快的定位问题,现场解决一部分常规数据库问题。

对其它专业要求比较强的数据库问题,也能为后续Oracle专家深入分析、诊断问题提供规范、完整的信息。

文档按问题处于的阶段分两部分-事前阶段、事中阶段,事前阶段描述了每天、每周末、每月末针对数据库所需进行的管理工作,如:

日常监控,包括有环境监控、数据库运行状况监控、性能监控;日常数据库管理,包括:

系统运行快照采集、表空间管理、数据库备份恢复、表、索引统计分析、TOP会话、SQL执行计划信息查看等。

涉及有相关图形化管理工具使用方法、数据库自动脚本、命令使用方法。

事中阶段描述了数据库发生问题时处理思路,需要收集哪些相关信息。

第一章.事前阶段

一、日常工作-每天应做工作内容

1、工作内容-日常环境监控

1.1系统运行环境监控

查看Oracle数据文件、控制文件、联机日志及归档日志存放的文件系统或裸设备空间使用情况。

重点关注Oracle软件及数据文件所在卷空间使用率:

su-oracle

AIX、linux查看磁盘空间:

df–kv

HP-UX查看磁盘空间:

bdf

检测操作系统CPU、内存、交换区、I/O配置状况

AIX:

CPU、内存、网络、IO、进程、页面交换:

topas

Linux、HP-UX:

CPU、内存、网络、IO、进程、页面交换:

top

1.2数据库运行状况监控

1.2.1外部

检查Oracle实例核心后台进程是否都存在、状态是否正常

$ps-ef|grepora_

查看数据库实例是否能正常连接、访问

SQL>selectstatusfromv$instance;

监听是否正常

$lsnrctlstatus

1.2.2内部

是否有表空间出现故障

SQL>selecttablespace_name,statusfromdba_tablespaces;

日志文件是否正常

SQL>Select*fromv$log;

SQL>Select*fromv$logfile;

2、工作内容-日常性能监控

2.1间隔一段时间使用操作系统top等工具监控系统资源动态运行状况

CPU、内存、网络、IO、进程、页面交换等主要活动监控:

top(HP)、topas(AIX)、vmstat、iostat等

2.2间隔一段时间对数据库性能进行监控

2.2.1Oracle9i图形工具-PerformanceManager监控顶层会话及顶层SQL

1.打开OEM控制台,选中要监控的数据库。

2.工具中选择DiagnosticPack-PerformanceManager,也可直接选中TopSession或TopSQL。

Oracle9i的PerformanceManager工具监控内容主要有:

内存的使用情况,IO情况,Oracle数据库进程情况,sql语句运行情况等,主界面如下:

可以通过顶层会话下钻获取到相关SQL执行计划等信息,也可以直接查看TopSql选项获取当前执行最频繁、消耗资源最多的SQL语句

在数据页签下面列出了监控的选项列表,可以根据各类选项对SQL语句进行排序。

选中相关SQL语句,单击右键选择“下钻”到“解释计划”查看执行计划:

执行计划显示如下:

2.2.2Oracle10gOEM工具监控顶层会话及获取SQL详细信息

登录Oracle10gOEM,选择性能-其它监视链接:

顶级活动

点击顶级会话中的会话ID

点击SQLID,查看该顶级会话中SQL的详细信息

点击计划标签,查看该SQL语句的详细执行计划

浏览该顶层会话对应SQL语句的详细信息

2.2.3字符界面下Sql语句及用户进程信息采集

n通过视图查看当前主要影响性能SQL语句

语法模版

SELECT*FROM

(SELECThash_value,address,substr(sql_text,1,40)sql,

[listofcolumns],[listofderivedvalues]

FROM[V$SQLorV$SQLXSorV$SQLAREA]

WHERE[listofthresholdconditionsforcolumns]

ORDERBY[listoforderingcolumns]DESC)

WHERErownum<=[numberoftopSQLstatements];

实际举例

SELECT*FROM

(SELECThash_value,address,substr(sql_text,1,40)sql,

buffer_gets,executions,buffer_gets/executions"Gets/Exec"

FROMV$SQLAREA

WHEREbuffer_gets>100000ANDexecutions>10

ORDERBYbuffer_getsDESC)

WHERErownum<=10;

n跟踪用户进程获取统计信息:

获取要跟踪的用户进程

SQL>selectsid,serial#,usernamefromv$session;

开始跟踪-结束跟踪

Execdbms_system.set_ev(9,437,10046,8,‘用户名');

Execdbms_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=yessys=nosort=fchela

3、工作内容-日常数据库管理

3.1一天内间隔一定时间运行

3.1.1检查警告日志文件中最新错误信息

Linux、Unix系列平台:

vialertsid.log

输入:

“/ORA-”回车进行查找

Windows平台下使用常用的文本编辑工具即可查看搜索警告日志文件中Oracle错误信息

3.1.2系统运行状况快照采集

每天根据实际情况,在以下三个阶段手工运行Statspack快照采集,输出快照报表:

l正常工作压力下

l每天业务最高峰期

l特殊业务运行阶段

3.1.2.1Oracle9i自动化脚本方式快照采集

创建当前时间点快照

如需采集当前数据库运行状况快照,取20分钟间隔两次运行该脚本。

自动执行statspack快照脚本:

statspack_auto_exec.sh

#!

/bin/sh

#creator:

james_jiang

#function:

producestatpacksnapshot

echo"AutoExecuteStatspack"

$ORACLE_HOME/bin/sqlplus/nolog<

connectperfstat/perfstat

execstatspack.snap

echo"Autoexecutestatspacksuccessfully!

"

exit

EOF

输出最近两个快照时间点之间的快照信息报表

自动产生最近两个快照时间点统计信息快照脚本:

statspack_auto_report.sh

#!

/bin/sh

#creator:

james_jiang

#function:

getstatpackreport

echo"Autocreatestatspacksnapshot!

"

SQLPLUS=$ORACLE_HOME/bin/sqlplus

LOGFILE=$ORACLE_HOME/spreport.log

REPFILE=$ORACLE_HOME/spreport.lst

$ORACLE_HOME/bin/sqlplus-Sperfstat/perfstat<

SETECHOOFF

SETHEADINGOFF

SETFEEDBACKOFF

SETPAGESIZE0

SETLINESIZE1000

SETTRIMSPOOLON

SPOOL$LOGFILE

selectSNAP_IDfrom(selectSNAP_IDfromstats\$snapshotwhereINSTANCE_NUMBER=1orderbySNAP_TIMEdesc)whererownum<3;

SPOOLOFF;

setechoon

setfeedbackon

setheadingon

exit

EOF

line1=`tail-1$LOGFILE`

line2=`head-1$LOGFILE`

echo"line1is"$line1

echo"line2is"$line2

$ORACLE_HOME/bin/sqlplus-Sperfstat/perfstat<

definebegin_snap=$line1

defineend_snap=$line2

definereport_name=$REPFILE

@?

/rdbms/admin/spreport.sql

echo"Autocreatestatspacksnapshotsuccessfully!

"

exit

EOF

3.1.2.2Oracle10gOEM图形管理工具实现系统快照采集

自动化脚本执行快照收集主要是Oracle9i版本的使用方式,Oracle10gOEM图形工具自动执行快照采集,缺省1小时收集一次,可以根据实际情况修改收集间隔时间、降低对系统性能影响。

系统快照自动收集时间、间隔、保留期限设置

登录Oracle10gOEM,选择管理-自动工作量档案库

点击编辑,查看或修改快照收集时间及间隔

Oracle10g缺省系统快照每隔一小时执行一次,保留最近15天的所有快照,可根据实际情况修改调整,点确定后保存所做修改。

创建当前时间点系统快照

点击管理快照和保留的快照集下面的当前快照ID

选择创建保留快照集,点击创建

选择“是”开始执行快照创建

快照在当前时间点成功创建。

输出两个快照时间点之间的快照信息报表

修改原来“创建保留的快照集”为“查看报告”,选择起始快照号,点击创建

选择结束快照号,点击“确定”

开始创建两个快照时间点之间的所有统计信息报告

另存该输出快照报告为HTML文件

注:

生成的统计信息快照报告放在专门目录下,定期对其整理、分析,作为EAS数据库运行整体状况及问题诊断的依据。

3.2每天工作结束后、系统空闲时运行

3.2.1表空间使用率

3.2.1.1SQL脚本方式查看

脚本:

FREESPACE.SQL

SELECTa.tablespace_name,ROUND(100-b.free/a.total*100)used_pct,

      ROUND(a.total/1024/1024)"total(MB)",

      ROUND(b.free/1024/1024)"free_total(MB)",

      ROUND(b.max_free/1024/1024)"free_max(MB)",b.free_cntfragment

 FROM(SELECT  tablespace_name,SUM(BYTES)total

           FROMdba_data_files

       GROUPBYtablespace_name)a,

      (SELECT  tablespace_name,SUM(BYTES)free,MAX(BYTES)max_free,

                COUNT(BYTES)free_cnt

           FROMdba_free_space

       GROUPBYtablespace_name)b

WHEREa.tablespace_name=b.tablespace_name 

3.2.1.2图形界面查看表空间使用率

Oracle9iOEM表空间管理

Oracle10gOEM表空间管理

登录OEM后选择管理-表空间

n

3.2.2数据库备份及日志清理

数据库备份主要提供两种方式,物理备份及逻辑备份,物理备份主要使用OracleRMAN工具,逻辑备份主要使用Oracle导出工具Exp及Expdp。

Oracle物理备份(RMAN)

该方式下周一到周五每天做一次增量备份,并检查备份是否正确,同时清理归档日志。

3.2.2.1Oracle9iRMAN自动化脚本增量备份

RMAN备份环境初始化设置:

rmannocatalog

rman>connecttargetsys/oracle

rman>configurecontrolfileautobackupon;

rman>configurecontrolfileautobackupformatfordevicetypediskto'f:

\rman_bak\%F.ctl';

rman>configuresnapshotcontrolfilenameto'f:

\rman_bak\snap_%F.ctl';

Rman备份命令写到一个脚本中,在命令行中执行这个脚本

RMANTARGET/NOCATALOGsys/oracleCMDFILEf:

\backup_incre_1.rcvLOGf:

\backup_incre_1.log

该命令可设置为crontab(unix/linux),bat批处理任务(Windows),在每天特定的时间点自动运行。

增量备份脚本:

backup_incre_1.rcv

run

{allocatechannelc1typeDISK;

backupincrementallevel=1format'f:

\rman_bak\incre_1_%d_%s_%p.bak'

(databaseincludecurrentcontrolfile);

backupformat'f:

\rman_bak\arch%u_%s_%p.bak'

(archivelogfromtime'sysdate-1'alldeleteinput);

}

显示RMAN备份集信息:

RMAN>listbackupset;

注:

上述脚本中涉及的文件路径需根据现场环境具体情况进行相应修改。

3.2.2.2Oracle10gOEM图形化方式设置RMAN备份自动执行任务

RMAN备份主要参数设置

登录10gOEM,选择维护-备份设置

磁盘设备备份路径、并行度指定(根据服务器cpu个数匹配)

备份策略设置

主要是指定备份磁盘位置及备份保留时间,下图设置中为周备份策略考虑,保留最近7天备份。

两种RMAN自动调度备份策略

1)使用Oracle建议的自动调度备份策略

选择维护-调度备份

选择“调度Oracle建议的备份”

选择备份目标介质,缺省备份到磁盘介质

该备份策略内容描述

设置该策略执行数据库全量或增量备份的调度时间

2)自定义RMAN自动备份策略

选择“调度定制备份”

选择备份类型、模式、归档日志、过时备份清理策略

备份目标介质设置(缺省使用前面“备份设置”中设置的参数)

备份自动执行的调度时间设置(通常设置在系统空闲时进行,如晚上12点过后)

备份设置信息复查,确定后提交作业

通过查看作业可以了解备份任务进展情况。

3)查看当前数据库RMAN备份信息

选择维护-备份/恢复中“备份报告”可以查看所有备份执行情况

注:

前面描述的是数据库全量备份的调度策略设置,增量备份的调度策略设置方法类似,只需要在备份类型中选择增量备份即可。

设置完成后EAS数据库自动备份策略为一周一次全量备份,在星期六晚上12点进行。

周一到周五每天晚上12点执行一次增量备份,保留最近7天备份,过期备份、归档日志自动删除。

Oracle逻辑备份(EXP/EXPDP)

1)操作系统级设置自动备份任务

root用户登录操作系统,运行crontab–e,添加以下内容:

5023**1-6su–oracle-c/usr/app/oracle/expdp/eas_expdp_MontoSat.sh>/dev/null2>&1

#星期一到星期六晚上11点50导出数据

5023**0su–oracle-c/usr/app/oracle/expdp/eas_expdp_Sunday.sh>/dev/null2>&1

#星期日11点50开始导出数据,并删除上周一到周六导出的备份数据。

2)逻辑备份脚本

逻辑备份脚本eas_expdp_MontoSat.sh(星期一到星期六)

#!

/bin/sh

#====================================================

#SCRIPT:

eas_expdp_MontoSat.sh

#AUTHOR:

James_jiang

#Date:

2007-10-10

#REV:

1.0

#PLATFORM:

AIXLinuxSolarisHpUnix

#PURPOSE:

Thisscriptisusedtorunlogicbackup.

#Copyright(c)2007KingdeeCo.,Ltd.

#AllRightsReserved

#=====================================================

DAY=`date+%a`

FILE_TARGET=eas_expdp_`expr$DAY'.dmp

FILE_LOG=eas_expdp_`expr$DAY`.log

exportFILE_TARGETFILE_LOG

expdpsalhr/salhrschemas=salhrdirectory=eas_expdp_dirdumpfile=$FILE_TARGETlogfile=$FILE_LOGjob_name=cases_exportparallel=4

逻辑备份脚本eas_expdp_Sunday.sh(星期日)

sqlplus"/assysdba"

SQL>createdirectoryeas_expdp_diras'/usr/app/oracle/expdp';

SQL>grantread,writeondirectoryeas_expdp_dirtosalhr;

Oracle10g版本逻辑备份使用expdp工具,在部署导出自动任务前需创建导出dmp文件存放目录并授权给EAS数据库用户:

#!

/bin/sh

#=====================================================

#SCRIPT:

eas_ex

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2