数据库巡检张浩数据库检测硬件机型HPDL580G7是否集群是系统实际用户数10数据库进程进入操作系统,登陆Oracle用户,命令:su-oracleProcess进程情况进入操作系统,登陆Oracle用户命令:ps-ef|grepora_说明Oracle11g后台进程DBRM说明:数据库资源管理进程(Thedatabaseresourcemanagerprocess),负责设置资源计划和其他的资源管理的工作.DIAG说明:数据库诊断进程(Thediagnosibilityprocess),负责维护管理各种用于诊断的转储文件,并执行oradebug命令。DIA0说明:另一个数据库诊断进程,负责检测Oracle数据库中的挂起(hang)和死锁的处理。PSP0说明:processspawner,用于产生oracle进程SMCO说明:spacemanagementcoordinator,该进程负责空间管理协调管理工作,负责执行空间的分配和回收。Wnnn说明:命名为W000,W001,W002.....,由smcO动态产生执行上述相关任务。VKTM说明:virtualkeeperoftime,用于提供wall-clocktime,(每秒钟更新一次)。提供每二十毫秒更新一次的reference-timecounter,看起来有点类似计时器的功能。GMON说明:用于维护asm磁盘组的磁盘之间的关系。KATE说明:当ASM的磁盘离线的时候,该进程负责asm的元文件的io读写。MARK说明:如果有向asm离线磁盘的missed写请求,该进程将ASM分配的单元的状态标记为staleFBDA说明:涉及到flashback-data-archive新特性的一个进程,Theflashbackdataarchiverproces。用于将轨表(trackedtables)的历史数据进行归档。当轨表上的事务提交以后,fbda进程负责将数据的前镜像保存到flashbackarchive区域。该进程还负责flashback的数据归档的空间管理、分配、保留,跟踪trackedtransactions。什么是轨表(trackedtables):是指启用了flashbackarchive特性的表。RMSn说明:TheOracleRACmanagementprocesses,负责执行OracleRAC的管理任务,比如RAC相关资源的创建和集群中新实例的添加。DSKM说明:Theslavediskmonprocess,负责oracle实例、asm实例和磁盘的管理进程之间的iofencing信息的交换。如果使用SAGE的存储,该进程还负责SAGE存储的一些信息的管理。RAC进程GSDglobalservicesdaemon全局服务守护进程lockprocess(LCK)锁管理进程DIAG:DIAGNOSABILITYDAEMON失败进程的诊断信息捕获进程OperatingSystem-Dependent(OSD)操作系统资源访问进程LMS-GobalCacheServiceProcess全局缓存服务进程LMD-GlobalEnqueueServiceDaemon全局查询服务守护进程LMON-GlobalEnqueueServiceMonitor全局查询服务监视进程LCK0-InstanceEnqueueProcess实例查询进程进程状态Space使用情况df-hListener监听状态命令:lsnrctlstatus配置正常运行情况命令:sqlplus“/assysdba”查看日志命令:More/u01/app/oracle/product/11.2.0/db_1/network/log/sqlnet.log有错误才有日志Tnsname配置情况标准配置位置:/u01/app/oracle/product/11.2.0/db_1/network/admin运行情况正常查看状态Tnspingtnsname(数据库实例名)Alert配置情况标准配置/u01/app/oracle/diag/rdbms/SID/INSTANCE/trace/alert_sid.log运行情况正常Morealert_sid.logCRS服务运行情况crsctlcheckcrs检查crs的健康情况资源运行情况crs_stat–t用来查看RAC中各节点上resources的运行状况,Resources的属性等OCR运行情况ocrcheck验证OCR的状态以及空间使用情况VotingDisk运行情况crsctlquerycssvotediskVotingdisk状态查询ASM运行情况crs_stat-t|grepasm使用情况#su-grid$asmcmdASMCMDlsDATA/ORA_DATA/ASMCMDlsdgora_data数据库su–oraclesqlplus“/assysdba”诊断结果及建议DBstatus数据库状态selectstatusfromv$instance;配置情况Select*fromv$parameter;运行情况正常使用资源情况select*fromv$resource_limit;ASM使用情况selectgroup_number,name,total_mb,free_mbfromv$asm_diskgroup;DBfile数据文件状态selectname,statusfromv$datafile;控制文件状态selectstatus,namefromv$controlfile;日志文件状态selectgroup#,members,archived,statusfromv$log;表空间使用率setpagesize50columnTablespaceformata13columnUsedMBformat99,999,999columnFreeMBformat99,999,999columnTotalMBformat99,999,999selectfs.tablespace_nameTablespace,(df.totalspace-fs.freespace)UsedMB,fs.freespaceFreeMB,df.totalspaceTotalMB,round(100*(fs.freespace/df.totalspace))PctFreefrom(selecttablespace_name,round(sum(bytes)/1048576)TotalSpacefromdba_data_filesgroupbytablespace_name)df,(selecttablespace_name,round(sum(bytes)/1048576)FreeSpacefromdba_free_spacegroupbytablespace_name)fswheredf.tablespace_name=fs.tablespace_nameorderbyPctFree/运行情况正常Sessions并发数selectcount(*)fromv$sessionwherestatus='ACTIVE';Redo使用情况selectb.THREAD#,a.GROUP#,a.STATUS,a.MEMBER,b.BYTES,b.ARCHIVED,b.STATUSfromv$logfilea,v$logbwherea.GROUP#=b.GROUP#;Performance配置情况察看数据库锁表锁表有时候是瞬间的,长时间锁定的表才可能是死锁。selectl.*,s.OSUSER,s.ACTION,o.OBJECT_NAMEfromgv$locked_objectl,gv_$sessions,all_objectsowherel.SESSION_ID=s.SIDando.OBJECT_ID=l.OBJECT_ID死锁setlinesize200columnoracle_usernamefora16columnos_user_namefora12columnobject_namefora30SELECTl.xidusn,l.object_id,l.oracle_username,l.os_user_name,l.process,l.session_id,s.serial#,l.locked_mode,o.object_nameFROMv$locked_objectl,dba_objectso,v$sessionswherel.object_id=o.object_idands.sid=l.session_id;selectt2.username||''||t2.sid||''||t2.serial#||''||t2.logon_time||''||t3.sql_textfromv$locked_objectt1,v$sessiont2,v$sqltextt3wheret1.session_id=t2.sidandt2.sql_address=t3.addressorderbyt2.logon_time;enqueue等待Selecteq_typelock,total_req#gets,total_wait#waits,cum_wait_timefromv$enqueue_statwheretotal_wait#0;等待事件setlinesize200columnusernamefora12columnprogramfora30columneventfora28columnp1textfora15columnp1for999,999,999,999,999selects.username,s.program,sw.event,sw.p1text,sw.p1fromv$sessions,v$session_waitswwheres.sid=sw.sidands.status='ACTIVE'orderbysw.p1;selectevent,p1File#,p2Block#,p3ReasonCodefromv$session_waitorderbyevent;whereevent='bufferbusywaits';selectowner,segment_name,segment_type,file_id,block_idfromdba_extentswherefile_id=&P1and&P2betweenblock_idandblock_id+blocks-1;columneventfora35;columnp1textfora40;selectsid,event,p1,p1textfromv$session_waitorderbyevent;RAC全局等待事件select*fromv$event_namewhereNAMElike'gc%'andWAIT_CLASS='Cluster';数据文件IOselectfs.namename,f.phyblkrdpbr,f.phyblkwrtpbw,f.phyblkrdpyr,f.readtim,f.writetimfromv$filestatf,v$dbfilefswheref.file#=fs.file#orderby2,3,4desc;表空间IOselecttablespace_name,sum(f.phyblkrd)pbr,sum(f.phyblkwrt)pbw,sum(f.phyblkrd)pyr,sum(f.readtim),sum(f.writetim)fromv$filestatf,dba_data_filesfswheref.file#=fs.file_idgroupbytablespace_nameorderby2,3,4desc;长事务setlinesize200columnnamefora16columnusernamefora10selecta.name,b.xacts,c.sid,c.serial#,c.