一、系统参数检查
1.主机配置 linux 环境
server name: hostname
os version: lsb_release -a
cpu: more /proc/cpuinfo
memory: top
主机型号: dmidecode |grep Product
AIX 环境
server name: hostname
os version: uname -a
cpu: lscfg | grep proc or lsattr -El proc0 or prtconf -s
memory: bootinfo -r or lsattr -El sys0 -a realmem or vmstat
2.内存参数:more /etc/sysctl.conf
3.oracle用户限制:ulimit -a
4.硬盘的可用空间:df
二、数据库配置检查
1.数据库版本:sqlplus '/ as sysdba'
2.安装的产品选项:select * from v$option;(value为True的为已安装的产品)
3.被使用的产品选项:select comp_ID, comp_name, version, status from dba_registry
4.数据库参数:
a.查看数据库启动时使用到的参数文件
show parameter spfile
b.查看数据库的非默认参数
select name, value from v$parameter where isdefault='FALSE';
三、运行日志和跟踪文件
1.Oracle 数据库进程生成跟踪文件来记录错误或冲突,这些跟踪文件可以用来进一步分析问题。
show parameter background_dump_dest
2.定期检查alert.log文件,以便及早发现问题
3.控制文件
查看控制文件:select * from v$controlfile;
备份控制文件:alter database backup controlfile to trace
4.redo log文件
select group#, thread#, bytes/1024/1024 size_mb, members, archived, status from v$log;
select * from v$logfile order by 1;
5.归档redo log(noarchivelog and archivelog)
查看归档模式:archive log list
6.数据文件
查看数据文件所占的空间
select count(*), sum(bytes)/1024/1024/1024 size_gb from v$datafile;
检测数据文件的位置。当数据文件增长过度,数据库中必须添加数据文件。
select tablespace_name, file_id, bytes/1024/1024 size_mb, autoextensible aut, status, file_name from dba_data_files;
7.自动扩展(Autoextend capabilities)
通过自动扩展命令进行数据文件的自动扩展。假定数据文件无法分配所需空间,那么它将提高数据文件的大小以获得更多空间。
建议:使用裸设备的数据文件,建议把自动扩展的属性关闭。
四、表空间
1.system表空间(建议:将程序用户对象迁移到system表空间以外)的数据对象:
select owner, segment_type, segment_name from dba_segments where owner not in ('SYS','SYSTEM') and tablespace_name='SYSTEM' order by 1;
2.表空间使用率:
SELECT df.TABLESPACE_NAME,FILES, extent_management ,sum_m as TOTAL_SIZE,--sum(largest) as "MAXFREE_MB",
sum_free_m as "FREE_MB",to_char(100*sum_free_m/sum_m, '999.99') AS FREE_PCT--,sum(blocks) as "FREE_EXTENTS"
FROM ( SELECT tablespace_name,count(file_id) as files ,sum(bytes)/1024/1024 AS sum_m FROM dba_data_files GROUP BY tablespace_name) df,
(SELECT tablespace_name,--max(bytes)/1024/1024 largest,
sum(bytes)/1024/1024 AS sum_free_m --,count(blocks) as blocks
FROM dba_free_space GROUP BY tablespace_name ) fs,(select tablespace_name,extent_management from dba_tablespaces) ts
where df.tablespace_name=fs.tablespace_name and fs.tablespace_name=ts.tablespace_name;
3.查看数据库对象
select owner,replace(object_type,' ','_') as OBJECT_TYPE,count(*) from dba_objects where
owner not in ('SYS','SYSTEM') group by owner,object_type order by owner,object_type;
4.查看无效数据对象:
select OWNER,OBJECT_NAME,replace(OBJECT_TYPE,' ','_') as OBJECT_TYPE,STATUS,TIMESTAMP from dba_objects where status='INVALID'
5.查看database links:select * from dba_db_links
6.索引检查:
索引需要维护。对于表的删除或者添加操作都会间接地对索引进行相应操作。过时的索引结构会产生碎片,此时索引需要被重新建立。
BLEVEL是B-tree索引形式的一部分,与Oracle为搜索某些纪录而减少索引搜索的次数相关联。在一些情况下,BLEVEL需要单独的磁盘命中。(In some cases, a separate disk hit is requested for each BLEVEL)如果 BLEVEL大于4,那么建议重建索引。
select * from dba_indexes where blevel > 4;
五、安全性管理
1.检查其它授予DBA权限的用户
select grantee, granted_role from dba_role_privs where granted_role='DBA'
2.检查被授权SYSDBA的用户
select * from v$pwfile_users;
六、NET8概况:
监听器的设置:位于服务器端的监听程序是单独的进程。它从客户端接受连接请求,并管理这些对服务端的请求。
more listener.ora, more tnsnames.ora
七、数据库性能
生产statspack报告,并分析报告。
八、数据库备份和恢复概况
备份和恢复策略:根据不同的数据库失败情况制定相应的恢复策略。
数据库全库恢复
表空间恢复
数据文件恢复
数据表恢复
根据制定的恢复策略进行恢复测试。