admin 管理员组文章数量: 887021
2024年1月15日发(作者:安装mysql出现microsoft)
. .
数据库巡检
X浩
数据库检测
硬件机型
是否集群
系统实际用户数
数据库进程
进入操作系统,登陆Oracle用户,命令:su - oracle
进入操作系统,登陆Oracle用户
进程情况 命令:ps -ef|grep ora_
Oracle 10g 后台进程
SMON(System Monitor)用于执行历程恢复、合并空间碎片并释放临时段。
PMON(Process Monitor)用于监视效劳器进程的执行,摒弃在效劳器进程失败时去除该效劳器进程。
DBWR(Database Writer)用于将数据库缓存的脏缓冲区数据写入到数据文件中。
LGWR(Log Writer)用于将重做日志缓冲区所记载的全部内容写入到充作日志文件中。
CKPT(Checkpoint Process)用于发出检查点(Checkpoint),检查点会同步数据库的数据文件、控制文件和重做日志,当发出检查点时,后台进程CKPT将检查点时刻的S(System Change Number)写入到控制文件和数据文件头部,同时促使后台进程DBWR将所有脏缓冲区写入到数据文件中。
ARCH(Archive Process)用于将重做日志的事物变化复制到归档日志中,该后台进程只有在archivelog模式下才有意义。
Oracle 11g新增的后台进程
DBRM
说明: 数据库资源管理进程(The database resource manager process),负责设置资源方案和其他的资源管理的工作.
DIAG
说明: 数据库诊断进程(The diagnosibility process),负责维护管理各种用于诊断的转储文件,并执行oradebug命令。
DIA0
说明: 另一个数据库诊断进程,负责检测Oracle数据库中的挂起(hang)和死锁的处理。
. v .
HP DL580 G7
是
10
Process
说明
. .
PSP0
说明: process spawner,用于产生oracle进程
SMCO
说明: space management coordinator,该进程负责空间管理协调管理工作,负责执行空间的分配和回收。
Wnnn
说明: 命名为W000,W001,,由smcO动态产生执行上述相关任务。
VKTM
说明: virtual keeper of time,用于提供wall-clock time,〔每秒钟更新一次〕。提供每二十毫秒更新一次的
reference-time counter,看起来有点类似计时器的功能。
GMON
说明: 用于维护asm磁盘组的磁盘之间的关系。
KATE
说明: 当ASM的磁盘离线的时候,该进程负责asm的元文件的io读写。
MARK
说明: 如果有向asm离线磁盘的missed 写请求,该进程将ASM分配的单元的状态标记为stale
FBDA
说明: 涉及到flashback-data-archive新特性的一个进程,The flashback data
archiver proces。用于将"轨表"(tracked
tables)的历史数据进展归档。当"轨表"上的事务提交以后,fbda进程负责将数据的前镜像保存到flashback archive区域。
该进程还负责flashback的数据归档的空间管理、分配、保存,跟踪tracked
transactions。
什么是"轨表"(tracked tables): 是指启用了flashback archive特性的表。
RMSn
说明: The Oracle RAC management processes,负责执行Oracle RAC的管理任务,比方RAC相关资源的创立和集群中新实例的
添加。
DSKM
说明: The slave diskmon process , 负责oracle 实例、asm实例和磁盘的管理进程之间的io fencing 信息的交换。如果
使用SAGE的存储,该进程还负责SAGE存储的一些信息的管理。
RAC 进程
GSD global services daemon 全局效劳守护进程
lock process(LCK) 锁管理进程
DIAG:DIAGNOSABILITY DAEMON 失败进程的诊断信息捕获进程
Operating System-Dependent(OSD) 操作系统资源进程
LMS - Gobal Cache Service Process 全局缓存效劳进程
LMD - Global Enqueue Service Daemon全局查询效劳守护进程
LMON-Global Enqueue Service Monitor全局查询效劳监视进程
LCK0 - Instance Enqueue Process 实例查询进程
进程状态
. v .
. .
Space 使用情况
df -h
命令:lsnrctl status
配置正常
监听状态
Listener
运行情况
查看日志
配置情况
Tnsname 运行情况
查看状态
配置情况
Alert
运行情况
效劳运行情况
CRS
资源运行情况
OCR
Voting
运行情况
Disk
运行情况
crs_stat -t | grep asm
* su - grid
$ asmcmd
ASMCMD> ls
DATA/
ORA_DATA/
ASMCMD> lsdg ora_data
crs_stat –t
用来查看RAC中各节点上resources的运行状况,Resources的属性等
命令:sqlplus "/as sysdba〞
命令:
More /u01/app/oracle/product/11.2.0/db_1/network/log/
有错误才有日志
标准配置
位置:/u01/app/oracle/product/11.2.0/db_1/network/admin
正常
Tnsping tnsname(数据库实例名)
标准配置
/u01/app/oracle/diag/rdbms/
正常
More alert_
crsctl check crs
检查crs的XX情况
运行情况
ocrcheck
验证OCR的状态以及空间使用情况
crsctl query css votedisk
Votingdisk 状态查询
ASM
使用情况
数据库
su – oracle
sqlplus "/as sysdba〞
. v .
. .
数据库状态
配置情况
DBstatus
运行情况
使用资源情况
ASM 使用情况
数据文件状态
控制文件DBfile
状态
日志文件状态
诊断结果及建议
select status from v$instance;
Select * from v$parameter;
正常
select * from v$resource_limit;
select group_number,name,total_mb,free_mb from v$asm_diskgroup;
select name,status from v$datafile;
select status,name from v$controlfile;
select group*,members,archived,status from v$log;
. v .
. .
表空间使用率
set pagesize 50
column "Tablespace" format a13
column "UsedMB" format 99,999,999
column "FreeMB" format 99,999,999
column "Total MB" format 99,999,999
select
pace_name "Tablespace",
(pace - ace) "Used MB",
ace "FreeMB",
pace "Total MB",
round(100 * (ace / pace)) "Pct Free"
from
(select
tablespace_name,
round(sum(bytes)/1048576) TotalSpace
from
dba_data_files
group by
tablespace_name
) df,
(select
tablespace_name,
round(sum(bytes)/1048576) FreeSpace
from
dba_free_space
group by
tablespace_name
) fs
where pace_name=pace_name
order by "Pct Free"
/
正常
select count(*) from v$session where status='ACTIVE';
select
*,*,,,,ED,
from v$logfile a,v$log b where *=*;
运行情况
Sessions 并发数
使用情况
Redo
Performan配置情况
. v .
. .
ce 观察数据库锁表
锁表有时候是瞬间的,长时间锁定的表才可能是死锁。
select l.*, , , _NAME
from gv$locked_object l, gv_$session s, all_objects o
where N_ID=
and _ID=_ID
set linesize 200
column oracle_username for a16
column os_user_name for a12
column object_name for a30
SELECT , _id,_username,_user_name,s,
n_id,*, _mode,_name
FROM v$locked_object l,dba_objects o,v$session s
where _id = _id and = n_id;
select
me||' '||||' '||*||' '||_time||' '||_text
from v$locked_object t1,v$session t2,v$sqltext t3
where n_id=
and _address=s
order by _time;
Selecteq_type"lock",total_req* "gets",total_wait* "waits",cum_wait_time from
v$enqueue_stat where total_wait*>0;
set linesize 200
column username for a12
column program for a30
column event for a28
column p1text for a15
column p1 for 999,999,999,999,999
select me,m,,sw.p1text,sw.p1 from v$session
s,v$session_wait sw
where = and ='ACTIVE'
order by sw.p1;
select event,p1 "File *",p2 "Block *",p3 "Reason Code" from v$session_wait
order by event;
where event = 'buffer busy waits';
select owner,segment_name,segment_type,file_id,block_id from dba_extents
where file_id = &P1 and &P2 between block_id and block_id + blocks -1;
column event for a35;
column p1text for a40;
select sid,event,p1,p1text from v$session_wait order by event;
死锁
enqueue等待
等待事件
. v .
. .
RAC全局等待事件
数据文件IO
表空间IO
select name,rd pbr,wrt
pyr,m,im
from v$filestat f, v$dbfile fs
where * = * order by 2,3,4 desc;
select tablespace_name,sum(rd)
pbw,sum(rd) pyr,sum(m),sum(im)
from v$filestat f, dba_data_files fs
where * = _id
group by tablespace_name
order by 2,3,4 desc;
pbw,rd
select * from v$event_name
WAIT_CLASS='Cluster';
where NAME like 'gc%' and
pbr,sum(wrt)
长事务
set linesize 200
column name for a16
column username for a10
select ,,,*,me,_text
from v$rollname a,v$rollstat b,v$session c,v$sqltext d,v$transaction e
where =
and =
and =
and _address=S
and _hashvalue=_value
order by ,,;
select sid,serial*,to_char(start_time,'yyyy-mm-dd hh24:mi:ss')
start_time,sofar,totalwork,(sofar/decode(totalwork,0,1,totalwork))*100
ratio,message from v$session_longops
where message like '%RMAN%';
select sid,serial*,to_char(start_time,'yyyy-mm-dd hh24:mi:ss')
start_time,sofar,totalwork,(sofar/decode(totalwork,0,1,totalwork))*100
ratio,message from v$session_longops
where sofar <> totalwork;
where (sofar/totalwork)*100 < 100;
大事务
观察用户session数量
Select count(*) from v$session;
如果session过多,观察select * from v$session,观察是什么程序
. v .
. .
归档的生成频率
set linesize 120
column begin_time for a26
column end_time for a26
select ,to_char(_time,'yyyy-mm-dd hh24:mi:ss') begin_time,
,to_char(_time,'yyyy-mm-dd hh24:mi:ss') end_time,
round((_time - _time)*24*60,2) minutes
from v$log_history a,v$log_history b
where = +1;
SELECT (1 - (SUM(DECODE(NAME, 'physical reads', VALUE, 0)) /
(SUM(DECODE(NAME, 'db block gets', VALUE, 0)) +
SUM(DECODE(NAME, 'consistent gets', VALUE, 0))))) * 100
"缓冲区命中率"
FROM V$SYSSTAT;
SELECT name, gets, misses, immediate_gets, immediate_misses,
100 - Decode(gets,0,0,misses/(gets+misses))*100 ratio1,
100 -
Decode(immediate_gets+immediate_misses,0,0,immediate_misses/(immediate_gets+immediate_misses))*100 ratio2
FROM v$latch WHERE name IN ('redo allocation', 'redo copy');
SELECT EXECUTIONS , DISK_READS, BUFFER_GETS,
ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2) Hit_radio,
ROUND(DISK_READS/EXECUTIONS,2) Reads_per_run,
SQL_TEXT
FROM V$SQLAREA
WHERE EXECUTIONS>0
AND BUFFER_GETS > 0
AND (BUFFER_GETS-DISK_READS)/BUFFER_GETS < 0.8
ORDER BY 4 DESC;
select sql_text,buffer_gets,executions,buffer_gets/executions
from v$sqlarea where buffer_gets>1000000 order by 4 desc;
SELECT me 用户名,
,
*,
_address,
e,
m,
pace,
*8192/1024/1024 "Used Space(M)",
e,
ts
FROM v$session se,
v$sort_usage su
WHERE =n_addr;
缓冲区命中率
重做日志命中率
低效SQL
TOP SQL
临时表空间情况
. v .
. .
在线日志情况
SELECT
,_TIME,_TIME,ROUND((__TIME)*24*60,2) MINATES
FROM V$LOG_HISTORY A,V$LOG_HISTORY B
WHERE = +1 AND _TIME>SYSDATE - 20
AND ROUND((__TIME)*24*60,2)<30
ORDER BY _TIME DESC;
SELECT
OWNER,INDEX_NAME,INDEX_TYPE,TABLE_NAME,STATUS
FROM DBA_INDEXES
WHERE STATUS = 'UNUSABLE';
无效索引
. v .
版权声明:本文标题:Oracle11gRAC数据库巡检手册 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1705325514h481088.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论