1、Oracle 11gR2数据库系统寻常维护操作手册修订纪录:版 本 号日 期作 者修 订 纪 录V1.0-03-07肖贤光 草稿目录一、简介3二、维护42.1 ASM管理与监控42.1.1 磁盘创立(Linux)42.1.2 查看磁盘(Linux)42.1.3 删除磁盘 (linux)52.1.4 创立磁盘组52.1.5 磁盘组新增磁盘52.1.6 磁盘组删除磁盘52.1.7 磁盘组删除52.1.8 磁盘组维护52.1.9 磁盘组监控62.2 OHAS服务管理与监控62.2.1 启/禁用服务资源62.2.2 启动/停止资源服务82.2.3 监控/删除资源服务92.3 表空间管理与监控102.3
2、.1 表空间管理102.3.2 表空间监控112.4 重做日记管理122.5 日记维护132.5.1定制GRID模块日记保存方略132.5.2定制RDBMS模块日记保存方略142.5.3 查看异常日记142.5.4 手工清理日记15一、 简介Oracle 11g引进了些新特性,在寻常维护方面也带来些变化和改进。寻常维护工作中,大体上保持和延续了此前版本优良和谐操作接口,只某些新特性下,增长或改进了操作交互方式。二、 维护 寻常维护工作中,重要有表空间、重做日记、归档、顾客帐户、表、索引、簇表等管理维护;在Oracle 11gR2数据库,咱们系统开始采用OracleASM组件来管理数据库存储,因
3、而ASM管理存储也成了一项寻常维护工作;此外,还采用了Oracle Restart功能来管理ASM、数据库、监听等数据库资源服务,故OHAS服务状态管理也是需要加以关注。 表空间、重做日记、归档普通管理和此前版本管理没有太多差别;只是涉及新增和调节时,涉及文献存储方面,因使用ASM部件,而需要做些操作命令语法上调节;顾客账户、表、索引、簇表等内部逻辑构造维护管理没有太多变化。2.1 ASM管理与监控 ASM管理涉及存储管理,重要有磁盘、磁盘组创立、新增、更新、删除等管理维护方面。2.1.1 磁盘创立(Linux)ASM磁盘创立,重要是使用ASMLib来管理磁盘配备,Oracle引进ASMLib
4、在内核级别进行磁盘管理,便于ASM实例辨认到磁盘,方面ASM创立、更新、删除磁盘组或组磁盘成员。ASMLib管理磁盘,通过在系统级别辨认到磁盘途径后,创立一种别名,来配备磁盘。 Redhat linux下通过多途径软件辨认磁盘途径后,对磁盘进行分区后,就可以使用ASMLib来创立一种磁盘别名。 示例:Redhat ES 5下,采用DM管理磁盘 通过多途径软件辨认并配备了一种磁盘途径,将在/dev/mapper目录生成一种设备文献,默认是:/dev/mapper/mpath0N命名,但这个辨认设备相应真实设备也许会随机器启动而发生变化;故可以通过wwwid号在/etc/multipath.con
5、f文献配备别名,来固化设备与设备文献名相应;如配备一种设备别名为:asm_dsk_01,则在/dev/mapper目录生成一种文献名:/dev/mapper/asm_dsk_01,这样就可以使用fdisk或kpartx来划分分区,然后使用ASMLib来自动管理设备和生成另一种别名,便于Oracle ASMLib 来管理设备权限,而不随系统启动发生权限信息丢失问题。创立语句:划分DM设备文献分区为:/dev/mapper/asm_dsk_01p1/usr/sbin/oracleasm createdisk DISK01 /dev/mapper/asm_dsk_01p1ASMLib创立磁盘别名后,
6、会在/dev/oracleasm/disks目录生成一种赋予ASM实例属主权限磁盘设备别名文献,如示例则生成一种设备文献: /dev/oracleasm/disks/DISK01,属主将是初始化ASMLib时配备属主:grid:asmadmin,ASMLib初始化配备,也可以通过配备文献进行调节:/etc/sysconfig/oracleasm 2.1.2 查看磁盘(Linux)磁盘查看,通过oracleasm脚本,查看系统当前已经被ASMLib管理磁盘。#查看创立ASMLib磁盘别名/usr/sbin/oracleasm listdisks#查看DM设备相应ASMLib磁盘/usr/sbin
7、/oracleasm querydisk /dev/mapper/asm_dsk_01p12.1.3 删除磁盘 (linux) ASMLib删除磁盘,需要先从ASM磁盘组里把磁盘卸载后,再从ASMLib配备里把磁盘别名删除。/usr/sbin/oracleasm deletedisk DISK012.1.4 创立磁盘组 ASM创立磁盘组,是在ASM实例里操作,以记录磁盘组使用磁盘和容量等元数据信息。可以通过SQLPLUS或ASMCMD,以及ASMCA工具配备。su - gridsqlplus / as sysasmcreate diskgroup DATA01 external redunda
8、ncy disk ORCL:DISK01, ORCL:DISK02;2.1.5 磁盘组新增磁盘alter diskgroup DATA01 add disk ORCL:DISK03, ORCL:DISK04;2.1.6 磁盘组删除磁盘 先查询出磁盘组里磁盘名set linesize set pagesize col g_name for a30col d_path for a60col d_name for a30select g.name grp_name,d.path d_path,d.name dsk_namefrom v$asm_disk d,v$asm_diskgroup gwher
9、e d.group_number=g.group_number; 删除磁盘alter diskgroup DATA01 drop disk DISK01, DISK02;2.1.7 磁盘组删除drop diskgroup DATA01 including contents;2.1.8 磁盘组维护 磁盘组维护,重要涉及加载、检查修复磁盘。#加载磁盘组alter diskgroup DATA01 mount;#卸载磁盘组alter diskgroup DATA01 dismount;#检查修复磁盘alter diskgroup DATA01 check all repair/norepair;al
10、ter diskgroup DATA01 check disk DISK01 repair/norepair;2.1.9 磁盘组监控 磁盘组监控,重要有:容量,磁盘加载状态,可以通过sqlplus登陆ASM实例查询视图,或在ASMCMD工具里查看。查看磁盘组分派和使用状况:(若磁盘空闲空间局限性,需要及时申请分派存储到主机)select name,total_mb,free_mb,hot_used_mb,cold_used_mbfrom v$asm_diskgroup;查看磁盘组加载状况:select name,state from v$asm_diskgroup; 通过ASMCMD工具查看#
11、查看磁盘组信息su - gridamscmd lsdg#查看连接客户端信息amscmd lsct 2.2 OHAS服务管理与监控 Oracle OHAS是Oracle 11g开始推出集成高可用解决方案一款管理工具,重要用来管理CRS,RAC,Oracle Restart,RAC On One Node,ASM,Listener等数据库资源服务守护进程管理工具。她可以通过crsctl工具作为管理接口,也可以通过srvctl进行接口管理服务资源。 涉及寻常管理工作某些有:启/禁用OHAS Deamon、ASM、磁盘组、监听、ONS、数据库、SERVICES;启动/停止OHAS Deamon、ASM
12、、磁盘组、监听、ONS、数据库、SERVICES;监控/删除OHAS Deamon、ASM、磁盘组、监听、ONS、数据库、SERVICES.2.2.1 启/禁用服务资源 启/禁用OHAS Deamon、ASM、磁盘组、监听、ONS服务需要在grid属主顾客下执行;启/禁用数据库、SERVICES资源服务,既可以在grid属主顾客,也可以在RDBMS顾客下执行。#启用 crs deamon服务crsctl enable crs#禁用 crs deamon服务crsctl disable crs#启用 has deamon服务crsctl enable has#禁用 has deamon服务crs
13、ctl disable has#启用ASM服务srvctl enable asm#禁用ASM服务srvctl disable asm#启用磁盘组资源srvctl enable diskgroup -g #禁用磁盘组资源srvctl disable diskgroup -g #启用监听资源srvctl enable listener -l #禁用监听资源srvctl disable listener -l #启用ons资源srvctl enable ons -v#禁用ons资源 srvctl disable ons -v#启用数据库资源srvctl enable database -d #禁用数
14、据库资源srvctl disable database -d #启用数据库服务srvctl enable service -d -s #禁用数据库服务srvctl disable service -d -s 2.2.2 启动/停止资源服务 启动/停止OHAS Deamon、ASM、磁盘组、监听、ONS服务需要在grid属主顾客下执行;启动/停止数据库、SERVICES资源服务,既可以在grid属主顾客,也可以在RDBMS顾客下执行。 #启动 crs deamon服务crsctl start crs#停止 crs deamon服务crsctl stop crs#启动 has deamon服务cr
15、sctl start has#停止 has deamon服务crsctl stop has#启动ASM服务srvctl start asm -o #停止ASM服务srvctl stop asm -f#启动磁盘组资源srvctl start diskgroup -g #停止磁盘组资源srvctl stop diskgroup -g -f#启动监听资源srvctl start listener -l #停止监听资源srvctl stop listener -l -f#启动ons资源srvctl start ons -v#停止ons资源 srvctl stop ons -v#启动数据库资源srvct
16、l start database -d -o #停止数据库资源srvctl stop database -d -f#启动数据库服务srvctl start service -d -s -o #停止数据库服务srvctl stop service -d -s -f 2.2.3 监控/删除资源服务 监控/删除OHAS Deamon、ASM、磁盘组、监听、ONS服务需要在grid属主顾客下执行;监控/删除数据库、SERVICES资源服务,既可以在grid属主顾客,也可以在RDBMS顾客下执行。 #监控 crs deamon服务crsctl check crscrs_stat -t#删除 crs de
17、amon服务$ORACLE_HOME/crs/install/rootcrs.pl -deconfig -force -verbose#监控 has deamon服务crsctl check hascrs_stat -t#删除 has deamon服务$ORACLE_HOME/crs/install/roothas.pl -deconfig -force -verbose#监控ASM服务srvctl status asm -a -v#删除ASM服务srvctl remove asm -f#监控磁盘组资源srvctl status diskgroup -g -a -v#删除磁盘组资源srvctl
18、 remove diskgroup -g -f#监控监听资源srvctl status listener -l -v#删除监听资源srvctl remove listener -l | -a -f#监控ons资源srvctl status ons -v#删除ons资源 srvctl remove ons -f -v#监控数据库资源srvctl status database -d -f -v#删除数据库资源srvctl remove database -d -f -y -v#监控数据库服务srvctl status service -d -s -f -v#删除数据库服务srvctl remov
19、e service -d -s -f2.3 表空间管理与监控2.3.1 表空间管理表空间管理中创立、添加、删除操作和9i没有太大变化,变化就是在创立、添加指定数据文献名时,不必麻烦自己指定一种文献名或裸设备名,只需要明示datafile项,以及大小和与否自动扩展即可;或有新磁盘组加入到ASM实例,并分派给这个数据库使用时,参数:db_create_file_dest 设立默认磁盘组非新加磁盘组名参数值时,需要在 datafile 背面带上新磁盘组名,如:datafile +DATA02即可。创立表空间,假定数据库参数db_create_file_dest,设定了一种磁盘组:+DATA01,则:
20、#普通创立crate tablespace ts_misc20 datafile size 1024m autoextend off extent management local segment space management auto;#若创立到新加一种非参数db_create_file_dest指定磁盘组,如:DATA02,则create tablespace ts_misc20_new datafile +DATA02 size 1024m autoextend off extent management local segment space management auto;#普通
21、添加数据文献alter tablespace ts_misc20 add datafile size 1024m autoextend off, size 2048m autoextend off, size 4096m autoextend off;#若添加到新加一种非参数db_create_file_dest指定磁盘组,如:DATA02,则alter tablespace ts_misc20_new add datafile +DATA02 size 1024m autoextend off, +DATA02 size 2048m autoextend off, +DATA02 size
22、4096m autoextend off;2.3.2 表空间监控 表空间监控在数据库里监控和9i同样,通过查询视图来获取使用和空闲状况;此外因当前数据库存储通过ASM来管理,同样为了保证系统能正常运营,也需要监控ASM管理磁盘组磁盘空间使用状况,避免磁盘组空间耗尽,导致系统宕机;监控ASM磁盘组办法,可按条目:2.1.9 磁盘组监控,来获取信息。数据库查询视图监控表空间SQL语句:set linesize set pagesize select t.tablespace_name TableSpace_Name, ROUND(t.Total_MB,2) Total_MB, ROUND(t.To
23、tal_MB-NVL(f.Free_MB,0),2) Used_MB, ROUND(NVL(f.Free_MB,0),2) Free_MB, ROUND(t.Total_MB-NVL(f.Free_MB,0)*100/t.Total_MB,2) Used_Rate, ROUND(NVL(f.Free_MB,0)*100/t.Total_MB,2) Free_Ratefrom (select tablespace_name,sum(bytes)/1024/1024 Total_MB from dba_data_files group by tablespace_name ) t, (select
24、 tablespace_name,sum(bytes)/1024/1024 Free_MB from dba_free_space group by tablespace_name ) fwhere t.tablespace_name = f.tablespace_name(+)union allselect dt.tablespace_name Tablespace_Name, ROUND(dt.Total_Mb,2) Total_Mb, ROUND(tp.Used_Mb,2) Used_Mb, ROUND(dt.Total_Mb - NVL(tp.Used_Mb,0),2) Free_Mb
25、, ROUND(NVL(tp.Used_Mb,0)/dt.Total_Mb,2)*100 Used_Rate, ROUND(dt.Total_Mb - NVL(tp.Used_Mb,0)/dt.Total_Mb,2)*100 Free_Ratefrom (select tablespace_name,sum(bytes)/1024/1024 Total_Mb from dba_temp_files group by tablespace_name ) dt, (select tablespace_name,sum(bytes_used)/1024/1024 Used_Mb from v$tem
26、p_extent_pool group by tablespace_name ) tpwhere tp.tablespace_name (+) = dt.tablespace_nameorder by TableSpace_Name;2.4 重做日记管理 重做日记组管理,其她方面也是和9i操作无异,重要也是指定日记成员时,需要考虑使用ASM特性,默认途径是由参数:db_create_online_log_dest_n指定。 #普通创立alter database add logfile group 4 size 256m;#若创立到新加一种非参数db_create_online_log_des
27、t_n指定磁盘组,如:DATA02,则:alter database add logfile group 4 (+DATA02,+DATA02,+DATA02) size 256m;#普通添加alter database add logfile member to group 4;#若添加到新加一种非参数db_create_online_log_dest_n指定磁盘组,如:DATA02,则:alter database add logfile member +DATA02 to group 4;2.5 日记维护 Oracle数据库在运营时,会生成某些日记、告警、监听、Coredump等日记信息
28、文献,寻常维护中需要对这些文献进行管理维护,避免文献大量耗用系统空间;11g此前,多数通过手工清理方式,进行日记文献删除清理,从11g开始,系统引进了ADR功能组件(Automatic Diagnostic Repository),可以定制化管理这些日记文献,涉及保存方略,清理等功能,并可以收集打包这些文献;访问调用这个功能,可以通过EM Grid Control或ADRCI命令行工具接口来配备管理。为了充分发挥ADR自动管理功能,节约寻常维护管理工作量,可以通过观测日记生成量和保存方略评估,来设立日记保存方略,以便ADR自动定期进行日记清理,避免耗用并撑爆空间,而影响系统正常运营。Oracl
29、e 11g,咱们系统布置单机和主机双机架构都采用Oracle Restart+ASM体系,并且系统布置GRID和RDBMS时,是需要分开布置,因此有对不同组件Home下日记信息,进行不同方略定制。2.5.1定制GRID模块日记保存方略 定制GRID模块日记保存方略,需要登陆到GRID模块软件属主顾客下,调用adrci工具接口,进行配备。 #调用ADRCI工具su - gridadrci# 在工具接口命令行,查看当前需要管理日记Home目录adrcishow homes#设立当前工作Home目录,Grid模块下,普通管理了ASM和监听器两个组件,故#有两个Home目录,因此需要分开设立,如这里先
30、设立ASMHome目录adrci set home diag/asm/+asm/+ASM#查看这个Home目录下当前保存方略设立adrci show control#设立保存方略,方略设立值单位是:小时,可依照实际状况而定adrci set control (SHORTP_POLICY = 480)adrci set control (LONGP_POLICY = 720)#设立后,再检测一遍adrci show control#再设立监听目录adrci set home diag/tnslsnr/listeneradrci show control#设立方略,方略设立值单位是:小时,可依照实
31、际状况而定adrci set control (SHORTP_POLICY = 240)adrci set control (LONGP_POLICY = 480)#设立后,再检测一遍adrci show control 2.5.2定制RDBMS模块日记保存方略 定制RDBMS模块日记保存方略,需要登陆RDBMS模块属主顾客下,调用adrci接口工具,进行定制化配备。#调用ADRCI工具su oracleadrci#在工具接口命令行,查看当前需要管理日记Home目录adrcishow homes#设立当前工作Home目录,RDBMS模块下普通只有一种Home目录,因而也可以#不设立adrcis
32、et home diag/rdbms/#查看这个Home目录下当前保存方略设立adrci show control#设立RDBMS目录方略,方略设立值单位是:小时,可依照实际状况而定adrci set control (SHORTP_POLICY = 480)adrci set control (LONGP_POLICY = 720)#设立后,再检测一遍adrci show control2.5.3 查看异常日记 寻常管理中,可以登录ADRCI工具,查看与否存在异常日记。 查看RDBMS日记信息示例:su oracleadrciadrcishow homesadrciset home diag
33、/rdbms/# 查看异常问题号adrci show problem#或则只查询某类错误号信息adrci show problem -p problem_key=ORA 4031#再查看这些异常摘要信息adrci show incident#指定异常错误号adrci show incident -p problem_key=ORA 4031#指定期间范畴adrci show incident -p create_time -02-28 16:20:45#再查看这些异常详细摘要信息adrci show incident -mode detailadrci show incident -mode
34、detail -p create_time -03-13 16:00:00#再获取这些异常相应trace文献信息,以便去查看异常详细信息#列出所有异常问题trace文献信息adrcishow incdir#列出指定事件trace文献信息,这里事件号,是前面摘要信息看到incdent_id号adrcishow incdir 34177#列出一种范畴事件号trace信息,事件号也是前面摘要信息看到incdent_id号adrcishow incdir 34000 35000#查看告警日记#查看整个告警日记文献内容,默认是打开文献后,是调用VI工具来操作文献,可以#使用VI命令查看alert信息adrcishow alert#指定只看最后300行adrcishow alert -tail 300注:同样,查看GRID模块下异常信息,也参照上面办法进行。2.5.4 手工清理日记 手工清理日记,也可以在ADRCI工具里进行手工清理日记文献或记录。 #通过摘要事件号,进行清理adrcipurge -i 0 1000#通过日记老化,准时间来清理;这里age项指定期间单位是:分钟,即多少分钟之前;#type项指定是什么类型日记,类型:ALERT|INCIDENT|TRACE|CDUMP|HM|UTSCDMPadrcipurge -age 60 -type ALERT