文档介绍:oracle 日常管理ORACLE 数据库管理员应按如下方式对 ORACLE 数据库系统做定期监控:(1). 每天对 ORACLE 数据库的运行状态,日志文件,备份情况,数据库的空间使用情况,系统资源的使用情况进行检查,发现并解决问题。(2). 每周对数据库对象的空间扩展情况,数据的增长情况进行监控,对数据库做健康检查,对数据库对象的状态做检查。(3). 每月对表和索引等进行 Analyze,检查表空间碎片,寻找数据库性能调整的机会,进行数据库性能调整,提出下一步空间管理计划。对 ORACLE 数据库状态进行一次全面检查。====================★每天的工作★====================(1).确认所有的 INSTANCE ,检测 ORACLE 后台进程:$ps –-ef|grep ora(2). 检查文件系统的使用(剩余空间)。如果文件系统的剩余空间小于 20%,需删除不用的文件以释放空间。$df -k(3). 检查日志文件和 trace 文件记录 alert 和 trace ※ 使用’’※ 对每个数据库,cd 到 bdump 目录,通常是$ORACLE_BASE/<SID>/bdump※ 使用 Unix ‘tail’命令来查看 alert_<SID>.log 文件※ 如果发现任何新的 ORA- 错误,记录并解决(4). 检查数据库当日备份的有效性。※对 RMAN 备份方式:检查第三方备份工具的备份日志以确定备份是否成功※对 EXPORT 备份方式:检查 exp 日志文件以确定备份是否成功※对其他备份方式:检查相应的日志文件(5). 检查数据文件的状态记录状态不是“online”的数据文件,并做恢复。Select file_name from dba_data_files where status=’OFFLINE’(6). 检查表空间的使用情况SELECT tablespace_name, max_m, count_blocks t, sum_free_m,TO_CHAR (100 * sum_free_m / sum_m, '') || '%' AS pct_freeFROM (SELECT tablespace_name, SUM (BYTES) / 1024 / 1024 AS sum_mFROM dba_data_filesGROUP BY tablespace_name),(SELECT tablespace_name AS fs_ts_name,MAX (BYTES) / 1024 / 1024 AS max_m,COUNT (blocks) AS count_blocks,SUM (BYTES / 1024 / 1024) AS sum_free_mFROM dba_free_spaceGROUP BY tablespace_name)WHERE tablespace_name = fs_ts_name ;(7). 检查剩余表空间/* Formatted on 2007/03/01 15:56 (Formatter Plus ) */SELECT tablespace_name, SUM (blocks) AS free_blk,TRUNC (SUM (BYTES) / (1024 * 1024)) AS free_m,MAX (BYTES) / (1024) AS big_chunk_k, COUNT (*) AS num_chunksFROM dba_free_spaceGROUP BY tablespace_name;(8). 监控数据库性能运行 bstat/estat 生成系统报告或者使用 statspack 收集统计数据※注意:TOP-5 事件(9). 检查数据库性能,记录数据库的 cpu 使用、IO、buffer 命中率等等使用 vmstat,iostat,glance,top 等命令(10). 日常出现问题的处理。====================★每周的工作★====================(1). 控数据库对象的空间扩展情况根据本周每天的检查情况找到空间扩展很快的数据库对象,并采取相应的措施-- 删除历史数据--- 扩表空间alter tablespace <name> add datafile ‘<file>’ size <size>;--- 调整数据对象的存储参数next extentpct_increase(2). 监控数据量的增长情况根据本周每天的检查情况找到记录数量增长很快的数据库对象,并采取相应的措施-- 删除历史数据--- 扩表空间alter ta