数据库(Oracle)运维工作内容及常用脚本命令(二)
错,从而可以起到空间告警的作用,表空间数据文件可以查询ba_data_files及dba_temp_files等视图;
6、查看数据库用户
--说明:
1)可以查看dba_users视图来了解数据库用户的情况,如果发现异常信息,及时通知专业DBA等相关人员,并进一步跟踪、分析,直到找到引起异常的原因并妥善解决,例如:发现了新的数据库用户;原来被锁定的用户被打开了;用户默认表空间发生了变化;用户默认资源配置梗概或资源消耗组发生了变化等。
7、查看用户权限及审计信息
--说明:
1)查看用户权限,看用户权限是否发生了变化,是否存在过度授权的情况,查看用户拥有的所有权限可以用以下语句:
SELECT 'ROLE' TYPE,grantee,granted_role privilege,admin_option ad,
'/' table_name,'/' column_name,'/' owner
FROM dba_role_privs
WHERE grantee = UPPER ('&&1')
UNION ALL
SELECT 'SYSTEM' TYPE,grantee,privilege privilege,admin_option ad,
'/' table_name,'/' column_name,'/' owner
FROM dba_sys_privs
WHERE grantee = UPPER ('&&1')
UNION ALL
SELECT 'TABLE' TYPE,grantee,privilege privilege,grantable ad,
table_name,'/' column_name,owner
FROM dba_tab_privs
WHERE grantee = UPPER ('&&1')
UNION ALL
SELECT 'COLUMN' TYPE,grantee,privilege privilege,
grantable ad,table_name,column_name,owner
FROM dba_col_privs
WHERE grantee = UPPER ('&&1')
ORDER BY 1;
2)如果系统启用了审计功能,根据审计具体配置的不同,可以查看相应表、视图、字典或操作系统文件;
8、查看系统会话数及会话情况
--说明:
1)查看系统会话数,可以多次运行以下命令查看,看看总会话数是否稳定,也可以分用户查看会话数,并查看各用户会话数是否稳定,并和之前的数据进行对比,如果发现不稳定或异常,及时通知专业DBA等相关人员,并进一步跟踪、分析,直至找到出现异常的原因并妥善解决,例如:会话的异常增长等。
select count(*) from v$session;
select username,count(*) from v$session group by username;
2)大体查看会话,看看是否有异常信息,如果发现异常情况,及时通知专业DBA等相关人员,并进一步跟踪、分析,直到找到出现异常的原因并妥善解决,例如:异常主机的登录;异常用户的登录等;
select * from v$session;
9、查看数据库等待事件
--说明:
1)数据库等待事件,可以反映数据库目前的运行状态,可以用以下命令查询,如果发现异常信息,及时通知专业DBA等相关人员,并进一步跟踪、分析,知道找到出现异常的原因并妥善解决,此外,由于该项检查专业性比较强,很多时候,最好由专业DBA或者运维人员与专业DBA一起检查该项目,以便及时准确的发现和解决问题
Select event "wait event",sum(seconds_in_wait) "waited so far(sec)",
Count(sid) "num sess waiting"
From v$session_wait
Group by event
order by "waited so far(sec)" desc,"num sess waiting" desc;
10、检查用户密码情况
--说明:
1)检查操作系统用户密码,检查各用户密码是否变化,如果发现异常,及时通知系统管理员等相关人员,并进一步跟踪、分析,直到找到异常的原因并妥善解决,最好定期修改密码;
2)检查数据库用户密码,检查数据库各用户密码是否变化,如果发现异常,及时通知专业DBA等相关人员,并进一步跟踪、分析,直到找到异常的原因并妥善解决,最好定期修改密码;
11、定期获取AWR报告并分析
--说明:
1)AWR报告是oracle数据库支持的一个功能,可以反映数据库相应时段的负载和性能等状态,系统默认保留一周的快照以生成相应AWR,快照粒度为1小时;
2)AWR包含信息非常全面,专业DBA可以根据它了解到相应时段数据库乃至服务器的整体状态,分析AWR报告的工作需要专业DBA或者请专业DBA配合来做,一旦发现异常,及时通知相关人员,并进一步跟踪、分析,直到找到异常的原因并妥善解决