巡检内容

1. 检查数据库基本状况

在本节中主要对数据库的基本状况进行检查,其中包含:检查Oracle 实例状态,检查Oracle 服务进程,检查 Oracle 监听进程,共三个部分。

1.1. 检查 Oracle 实例 状态
SQL> select instance_name,host_name,startup_tim e,status,database_status from v$instance;

其中“ 表示 Oracle 当前的实例状态,必须为 “ OPEN”;;“DATABASE_ 表示
Oracle 当前数据库的状态,必须为 "ACTIVE" 。

SQL> select name,log_mode,open_mode from v$database;

其中“LOG_MODE" 表示 Oracle 当前的归档方式。 “ARCHIVELOG" 表示数据库运行在归档模
式下,"NOARCHIVELOG“ 表示数据库运行在非归档模式下。在我们的系统中数据库必须运
行在归档方式下。

1.2. 检查 Oracle 服务 进程

ps -ef|grep ora_|grep -v grep&&ps -ef|grep ora_|grep -v grep|wc -l

在检查Oracle 的进程命令输出后,输出显示至少应包括以下一些进程:
. Oracle 写数据文件的进程,输出显示为: :“ora_dbw0_CKDB ”
. Oracle 写日志文件的进程,输出显示为: :“ora_lgwr_CKDB ”
. Oracle 监听实例状态的进程,输出显示为: :“ora_smon_CKDB ”
. Ora cle 监听客户端连接进程状态的进程,输出显示为: :“ora_pmon_CKDB ”
. Oracle 进行归档的进程,输出显示为: :“ora_arc0_CKDB ”
. Oracle 进行检查点的进程,输出显示为: :“ora_ckpt_CKDB"
. Oracle 进行恢复的进程,输出显示为: :“ora_reco_CKDB"

1.3. 检查 Oracle 监听状态

/home/oracle>lsnrctl status

“Services Summary”项表示 Oracle 的监听进程正在监听哪些数据库实例,输出显示中至少应
该有 CKDB 这一项。

检查监听进程是否存在:

[oracle@AS14 ~]$ ps -ef|grep lsn|grep -v grep

2. 检查系统和oracle日志文件

在本节主要检查相关的日志文件,包含:检查操作系统的日志文件,检查Oracle 日志文件,检查 Oracle 核心转储目录,检查 Root 用户和 Oracle 用户的 email ,总共四个部分。

2.1. 检查操作系统日志文件

# cat /var/log/messages |grep failed
查看是否有与Oracle 用户相关的出错信息。

2.2. 检查 oracle 日志文件

[oracle@AS14 ~]$ cat /data/oracle/admin/CKDB/bdump/alert_CKDB.log |grep ora
[oracle@AS14 ~]$ cat /data/oracle/admin/CKDB/bdump/alert_CKDB.log |grep err
[oracle@AS14 ~]$ cat /data/oracle/admin/CKDB/bdump/alert_CKDB.log |grep fail

Oracle 在运行过程中,会在警告日志文件 (alert_SID.log 中记录数据库的一些运行情况:数据
库的启动、关闭,启动时的非缺省参数;数据库的重做日志切换情况,记录每次切换的时间,
及如果因为检查点 checkpoint 操作没有执行完成造成不能切换,会记录不能切换的原因;
对数据库进行的某些操作,如创建或删除表空间、增加数据文件;数据库发生的错误,如表
空间不够、出现坏块、数据库内部错误 (ORA-600) 等。 定期检查日志文件,根据日志中发
现的问题及时进行处理

 2.3. 检查 Oracle 核心转储目录

$ls $ORACLE_BASE/ CKDB /cdump/*.trc|wc -l
$ls $ORACLE_BASE/ CKDB /udump/*.trc|wc -l

如果上面命令的结果每天都在增长,则说明Oracle 进程经常发生核心转储。这说明某些用
户进程或者数据库后台进程由于无法处理的原因而异常退出。频繁的核心转储特别是数据库
后台进程的核心转储会导致数据库异常终止。

2.4. 检查 Root 用 户和 Oracle 用户的 email

tail -n 200 /var/mail/root
tail -n 200 /var/mail/oracle

查看有无与Oracle 用户相关的出错信息。

3. 检查Oracle对象状态

在本节主要检查相关Oracle 对象的状态,包含:检查 Oracle 控制文件状态,检查 Oracle在线日志状态,检查 Oracle 表空间的状态,检查 Oracle 所有数据文件状态,检查 Oracle 所有表、索引、存储过程、触发器、包等对象的状态,检查 Oracle 所有回滚段的状态,总共六个部分。

3.1. 检查 Oracle 控制文件状态

SQL> select status,name from v$controlfile;

输出结果应该有3 条以上(包含 3 条)的记录, ,"STATUS“ 应该为空。状态为空表示控制文
件状态正常。

3.2. 检查 Oracle 在线日志状态

SQL> select group#,status,type,member from v$logfile;

GROUP#  STATUS TYPE MEMBER
3                ONLINE /data/oradata/CKDB/redo03.log
2                ONLINE /data/oradata/CKDB/redo02.log
1                ONLINE /data/oradata/CKDB/redo01.log
4                ONLINE /data/oradata/CKDB/redo04.log
5                ONLINE /data/oradata/CKDB/redo05.log
6                ONLINE /data/oradata/CKDB/redo06.log

6 rows selected

3.3. 检查 Oracle 表空间的状态

SQL> select tablespace_name,status from dba_tablespaces;

输出结果中STATUS 应该都为 ONLINE 。

3.4. 检查 Oracle 所有数据文件状态

SQL> select name,status from v$datafile;

输出结果中"STATUS"应该都为 "ONLINE"

SQL> select file_name,status from dba_data_files;

输出结果中"STATUS"应该都为 "AVAILABLE"

3.5. 检查无效对象
sql>select owner,object_name,object_type from dba_objects where status!='VALID' and
own er!='SYS' and owner!='SYSTEM';

如果有记录返回,则说明存在无效对象。若这些对象与应用相关,那么需要重新
编译 生成这个对象 ,或者

SELECT owner, object_name, object_type FROM dba_objects WHERE status= 'INVALID';

3.6. 检查所有回滚段状态

SQL> select segment_name,status from dba_rollback_segs;

输出结果中所有回滚段的"STATUS"应该都为 "ONLINE"

4. 检查Oracle相关资源的使用情况

在本节主要检查Oracle 相关资源的使用情况,包含:检查 Oracle 初始化文件中相关的
参数值, 检查数据库连接情况,检查系统磁盘空间, 检查 Oracle 各个表空间 使用 情况,检
查一些扩展异常的对象,检查 system 表空间内的内容,检查对象的下一扩展与表空间的最
大扩展值,总共 七 个部分。

4.1. 检查 Oracle 初始化文件中相关参数值
SQL> select resource_name,max_utilization,initial_allocation,limit_value from v$resource_limit;

若LIMIT_VALU MAX_UTILIZATION<=5 ,则表明与 RESOURCE_NAME

相关的 Oracle 初始化参数需要调整。可以通过修改 Oracle 初始化参数文件

$ORACLE_BASE/ CKDB /pfile/initORCL.ora 来修改。

4.2. 检查数据库连接情况
查看当前会话连接数 ,是否属于正常范围。

SQL> select count(*) from v$session;

select sid,serial#,u sername,program,machine,status from v$session;

其中:SID 会话 session 的 ID 号;
SERIAL# 会话的序列号,和 SID 一起用来唯一标识一个会话;
USERNAME 建立该会话的用户名;
PROGRAM 这个会话是用什么工具连接到数据库的;
STATUS 当前这个会话的状态, ACTIVE 表示会话正在执行某些任务, INACTIVE 表示当
前会话没有执行任何操作;
如果建立了过多的连接,会消耗数据库的资源,同时,对一些“挂死”的连接可能需要手工
进行清理。如果 DBA 要手工断开某个会话,则执行:(一般不建议使用这种方式去杀掉数
据库的连接,这样有时候 session 不会断开。容易引起死连接。建议通过 sid 查到操作系统
的 spid, 使用 ps -ef|grep spidno 的方式确认 spid 不是 ORACLE 的后台进程。使用操作系统的
kill -9 命令杀掉连接)

alter system kill session 'SID,SERIAL#';

注意:上例中SID 为 1 到 10(USERNAME 列为空 的会话,是 Oracle 的后台进程,不要对这
些会话进行任何操作。

4.3. 检查系统 磁盘空间
如果文件系统的剩余空间过小或增长较快,需对其进行确认并删除不用的文件以释放空
间。

 4.4. 检查表空间使用情况

SQL> select f.tablespace_name,a.total,f.free,round((f.free/a.total)*100) "% Free"
from
(select tablespace_name, sum(bytes/(1024*1024)) total from dba_data_files group by
tablespace_name) a,
(select tablespace_name, roun d(sum(bytes/(1024*1024))) free from dba_free_space group by
tablespace_name) f

WHERE a.tablespace_name = f.tablespace_name(+)
order by "% Free";

如果空闲 率 %Free 小于 1 0% 以上(包含 1 0%0%),则注意要增加数据文件来扩展表空间而不要是用数据文件的自动扩展功能。

4.5. 检查一些扩展异常的对象

sql> select Segment_Nam e, Segment_Type, TableSpace_Name,
(Extents/Max_extents)*100 Percent
From sys.DBA_Segments
Where Max_Extents != 0 and (Extents/Max_extents)*100>=95
order By Percent;

如果有记录返回,则这些对象的扩展已经快达到它定义时的最大扩展值。对于这些对象要修
改它的存储结构参数。

4.6. 检查 system 表空间内的内容

select distinct(owner) from dba_tables
where tablespace_name='SYSTEM' and
owner!='SYS' and owner!='SYSTEM'
union select distinct(owner) from dba_indexes
where tablespace_name='SYSTEM' and
owner!='SYS' and owner!='SYSTEM';

no rows selected

如果记录返回,则表明system 表空间内存在一些非 system 和 sys 用户的对象。应该进一步
检查这些对象是否与我们应用相关。如果相关请把这些对象移到非 System 表空间,同时应
该检查这些对象属主的缺省表空间值 。

4.7. 检查对象的下一扩展与表空间的最大扩展值
sql>select a.table_name, a.next_extent, a.tablespace_name
from all_tables a,
(select tablespace_name, max(bytes) as big_chunk
from dba_free _space
group by tablespace_name ) f
where f.tablespace_name = a.tablespace_name
and a.next_extent > f.big_chunk
union
select a.index_name, a.next_extent, a.tablespace_name
from all_indexes a,
(select tablespace_name, max(bytes) as big_chunk
from db a_free_space
group by tablespace_name ) f
where f.tablespace_name = a.tablespace_name
and a.next_extent > f.big_chunk;

如果有记录返回,则表明这些对象的下一个扩展大于该对象所属表空间的最大扩展值,需调
整相应表空间的存储参数 。

5. 检查Oracle数据库备份结果

在本节主要检查Oracle 数据库备份结果 ,包含 检查数据库备份日志信息 检查 backup
卷中文 件产生的时间 检查 oracle 用户的 email 总共 三 个部分。

5.1. 检查数据库备份日志信息
假设:备份的临时目录为/backup/hotbakup ,我们需要检查 200 9 年 7 月 22 日的备份结果,
则用下面的命令来检查:

#cat /backup/hotbackup/hotbackup-0-9-7-22 .log|grep -i error

备份脚本的日志文件为
hotbackup-月份-日期-年份.log ,在备份的临时目录下面。如果文件中
存在 “ ERROR:”,则表明备份没有成功,存在问题需要检查。

5.2. 检查 backup 卷中 文件产生的时间
#ls -lt /backup/hotbackup

backup卷是备份的临时目录,查看输出结果中文件的日期,都应当是在当天凌晨由热备份
脚本产生的。如果时间不对则表明热备份脚本没执行成功。

5.3. 检查 oracle 用户的 email

tail -n 300 /var/mail/oracle

热备份脚本是通过Oracle 用户的 cron 去执行的。 cron 执行完后操作系统就会发一条 Email
通知 Oracle 用户任务已经完成。查看 Oracle email 中今天凌晨部分有无 ORA Error Failed
等 出错信息,如果有则表明备份不正常。

6. 检查Oracle数据库性能

在本节主要检查Oracle 数据库性能 情况,包含: 检查数据库的等待事件 检查死锁及
处理 检查 cpu 、I/O 、内存性能 查看是否有僵死进程 检查行链接 迁移 定期做统计分
析 检查缓冲区命中率 检查共享池命中率 检查排序区 检查日志缓冲区 总共 十 个部分。

6.1. 检查数据库的等待事件

set pages 80
set lines 120
col event for a40
select sid,event,p1,p2,p3,WAIT_TIME,SECONDS _IN_WAIT from v$session_wait where event
not like 'SQL%' and event not like 'rdbms%'

如果数据库长时间持续出现大量像latch free, enqueue, buffer busy waits, db file sequential
read, db file scattered read 等等待事件时,需要对其进行分析,可能存在问题的语句。

6.2. Disk Read 最高的 SQL 语句的获取

SQL>SELECT SQL_TEXT FROM (SELECT * FROM V$SQLAREA ORDER BY
DISK_READS)
WHERE ROWNUM<=5 desc;

6.3. 查找前十条性能差的 sql

SELECT * FROM (SELECT PARSING_USER_ID
EXECUTIONS,SORTS,COMMAND_TYPE,DISK_READS,
SQL_TEXT FROM V$SQLAREA ORDER BY DISK_READS DESC)
WHERE ROWNUM<10 ;

6.4. 等待时间最多的 5 个系统等待事件的获取
SELECT * FROM (SELECT * FROM V$SYSTEM_EVENT WHERE EVENT NOT LIKE
'SQL%' ORDER BY TOTAL_WAITS DESC) WHERE ROWNUM<=5;

6.5. 检查运行很久的 SQL

COLUMN USERNAME FORMAT A12
COLUMN OPNAME FORMAT A16
COLUMN PROGRESS FORMAT A8
SELECT USERNAME,SID,OPNAME,ROUND(SOFAR*100 / TOTALWORK ,0) || '%' AS
PROGRESS,TIME_REMAINING,SQL_TEXT FROM V$SESSION_LONGOPS , V$SQL
WHERE TIME_REMAINING <> 0 AND SQL_ADDRESS=ADDRESS AND
SQL_HASH_VALUE = HASH_VALUE;

6.6. 检查消耗 CPU 最高的进程

SET LINE 240
SET VERIFY OFF
COLUMN SID FORMAT 999
COLUMN PID FORMAT 999
COLUMN S_ S_# FORMAT 999
COLUMN USERNAME FORMAT A9 HEADING "ORA USER"
COLUMN PROGRAM FORMAT A29
COLUMN SQL FORMAT A60
COLUMN OSNAME FORMAT A9 HEADING "OS USER"
SELECT P.PID PID,S.SID SID,P.SPID SPID,S.USERNAME USERNAME,S.OSUSER
OSNAME,P.SERIAL# S_#,P.TERMINAL,P.P ROGRAM
PROGRAM,P.BACKGROUND,S.STATUS,RTRIM(SUBSTR(A.SQL_TEXT, 1, 80)) SQLFROM
V$PROCESS P, V$SESSION S,V$SQLAREA A WHERE P.ADDR = S.PADDR AND
S.SQL_ADDRESS = A.ADDRESS (+) AND P.SPID LIKE '%&1%';

6.7. 检查 碎片程度高的表

SQL> SELECT segment_name table_name,COUNT(*) exten ts FROM dba_segments WHERE
owner NOT IN ('SYS', 'SYSTEM') GROUP BY segment_name HAVING COUNT(*)=(SELECT
MAX(COUNT(*)) FROM dba_segments GROUP BY segment_name);

6.8. 检查 表空间的 I/O 比例

SQL> SELECT DF.TABLESPACE_NAME NAME,DF.FILE_NAME "FILE",F.PHYRDS PYR,
F.PHYBLKRD PB R,F.PHYWRTS PYW, F.PHYBLKWRT PBW FROM V$FILESTAT F,
DBA_DATA_FILES DF WHERE F.FILE# = DF.FILE_ID ORDER BY
DF.TABLESPACE_NAME;

6.9. 检查 文件系统的 I/O 比例

SQL> SELECT SUBSTR(A.FILE#,1,2) "#", SUBSTR(A.NAME,1,30) "NAME",
A.STATUS,A.BYTES,B.PHYRDS,B.PHYWRTS FROM V$DATAFILE A, V$FILESTAT B
WHERE A.FILE# = B.FILE#;

6.10. 检查死锁 及 处理
查询目前锁对象信息

col sid for 999999
col username for a10
col schemaname for a10
col osuser for a16
col machine for a16
col terminal for a20
col owner for a10
col object_name for a30
col object_type for a10
select sid,serial#,username,SCHEMANAME,osuser,MACHINE,
terminal,PROGRAM,owner,object_name,object_type,o.object_id
from dba_objects o,v$locked_object l,v$session s
where o.object_id=l.object_id and s.sid=l.session_id;

oracle级 kill 掉该 session

alter system kill ses sion '&sid,&serial#';

操作系统级kill 掉 session

# kill 9 pid

6.11. 检查 数据库 cpu 、 I/O 、内存性能
记录数据库的cpu 使用、 IO 、 内存 等 使用情况 使用 vmstat,iostat,sar,top 等命令进行信
息收集并检查这些信息,判断资源使用情况。
1. CPU 使用情况:

注意上面的蓝色字体部分,此部分内容表示系统剩余的cpu ,当其平均值下降至 10% 以下的
时视为 CPU 使用率异常,需记录下该数值,并将状态记为异常。

2. 内存使用情况:

如上所示,蓝色部分表示系统总内存,红色部分表示系统使用的内存,黄色部分表示系统剩
余内存,当剩余内存低于总内存的。因为Linux会将剩余内容作为缓存,提升系统性能。

所以真实的剩余内存=free+buffers+cached,当真实剩余内存低于总余内存的 10% 时视为异常。

3. 系统 I/O 情况:

如上所示,蓝色字体部分表示磁盘读写情况,红色字体部分为cpu IO 等待情况。

4. 系统负载情况:

如上所示,蓝体字部分表示系统负载,后面的 3 个数值如果有 高于 2.5 的时候就表明系统在
超负荷运转了 ,并将此值记录到巡检表,视为异常。

6.12. 查看是否有僵死进程

select spid from v$process where addr not in (sele ct paddr from v$session);

有些僵尸进程有阻塞其他业务的正常运行,定期杀掉僵尸进程。

6.13. 检查行链接 迁移
Sql>select table_name,num_rows,chain_cnt From dba_tables Where owner='CTAIS2' And
chain_cnt<>0;

注:含有long raw 列的表有行链接是正常的 找到迁移行保存到 chained_rows 表中, 如没有该
表执行 ../rdbms/admin/utlchain.sql
Sql>analyze ta ble tablename list chained rows;
可通过表 chained_rows 中 table_name,head_rowid 看出哪些行是迁移行
如 Sql>create table aa as select a.* from sb_zsxx a,chained_rows b where a.rowid=b.head_rowid
and b.table_name ='SB_ZSXX';
sql>delete from sb_zsxx where rowid in (select head_r owid from chained_rows where table_name= 'SB_ZSXX';
sql>insert into sb_zsxx select * from chained_row where table_name = 'SB_ZSXX';

6.14. 定期做统计分析
对于采用Oracle Cost Based Optimizer 的系统,需要定期对数据对象的统计信息进行采集更
新,使优化器可以根据准备的信息作出正确的 explain plan 。在以下情况更需要进行统计信
息的更新:
1 、应用发生变化
2 、大规模数据迁移、历史数据迁出、其他数据的导入等
3 、数据量发生变化
查看表或索引的统计信息是否需更新,如:
Sql>Select table_name,num_rows,last_analyzed From user_tables where table_name
='DJ_NSRXX';
sql>select count(*) from DJ_NSRXX 如 num_rows 和 count(*)

如果行数相差很多,则该表需要更新统计信息,建议一周做一次统计信息收集,如:
Sql>exec sys.dbms_ stats.gather_schema_stats(ownname=>'CTAIS2',cascade => TRUE,degree =>4);

6.15. 检查缓冲区命中率
SQL> SELECT a.VALUE + b.VALUE logical_reads,
c.VALUE phys_reads,
round(100*(1 c.value/(a.value+b.value)),4) hit_ratio
FROM v$sysstat a,v$sysstat b,v$sysstat c
WHERE a.NAME='db block gets'
AND b.NAME='consistent gets'
AND c.NAME='physical reads';

如果命中率低于90% 则需加大数据库参数 db_cache_size 。

6.16. 检查共享池命中率

SQL> select sum (pinhits)/sum(pins)*100 from v$librarycache;

如低于95%95%,则需要调整应用程序使用绑定变量,或者调整数据库参数 shared pool 的大小。

6.17. 检查排序区

SQL> select name,value from v$sysstat where name like '%sort%';

如果disk/(memoty+row) 的比例过高,则需要调整 sort_area_size(workarea_size_policy=false)
或 pga_aggregate_target(workarea_size_policy=true) 。

6.18. 检查日志缓冲区
SQL> selec t name,value from v$sysstat where name in ('redo entries','redo buffer allocation
retries');

如果redo buffer allocation retries/redo entries 超过 1% ,则需要增大 log_buffer 。

7. 检查数据库安全性

在本节主要检查Oracle 数据库的安全性 ,包含 检查系统安全信息 定 期修改密码
总共 两 个部分。

7.1. 检查系统安全 日志 信息
系统安全日志文件的目录在/var/log 下,主要检查登录成功或失败的用户日志信息。
检查登录成功的日志:

# grep i accepted /var/log/secure

检查登录失败的日志:

# g rep i inval /var/log/secure &&grep i failed /var/log/secure

在出现的日志信息中没有错误Invalid 、 refused 提示,如果没有 Invalid 、 refused 视为系统正
常,出现错误提示,应作出系统告警通知。

7.2. 检查用户 修改密码

在数据库系统 上往往存在很多的用户,如:第三方数据库监控系统,初始安装数据库时的演
示用户,管理员用户等等 这些用户的密码往往是写定的,被很多人知道,会被别有用心的
人利用来攻击系统甚至进行修改数据。需要修改密码的用户包括:
数据库管理员用户 SYS SYSTEM 其他用户。

登陆系统后,提示符下输入 cat /etc/passwd ,在列出来的用户中查看是否存在已经不再使用
的或是陌生的帐号。若存在,则记录为异常。
修改密码 方法:

Sql >alter user USER_NAME identified by passsword;

8. 其他检查

8.1. 检查当前 crontab 任务是否正常

[oracle@AS14 ~]$ crontab -l

8.2. Oracle Job 是否有失败

Sql>select job,what,last_date,next_date,failures,broken from dba_jobs Where
schema_user='CAIKE';

如有问题建议重建job ,如
exec sys.dbms_job.remove(1);
commit;
exec
sys.dbms_job.isubmit(1,'REFRESH_ALL_SNAPSHOT;',SYSDATE+1/1440,'SYSDATE+4/1440');
commit;

8.3. 监控数据量的增长情况

SQL> select
 A.tablespace_name,(1 --(A.total)/B.total)*100 used_percent
 from (select table space_name,sum(bytes) total
 from dba_free_space group by tablespace_name) A,
 (select tablespace_name,sum(bytes) total
 from dba_data_files group by tablespace_name) B
 where A.tablespace_name=B.tablespace_name;

根据本周每天的检查情况找到空间扩展很快的数据库对象
并采取相应的措施
---删除历史数据
移动规定数据库中至少保留 6 个月的历史数据,所以以前的历史数据可以考虑备份然后进行
清除以便释放其所占的资源空间。
---扩表空间

alter tablespace < tablespace_ name> add datafile ‘<file>’ size <size> autoextend off;

注意:在数据库结构发生变化时,如增加了表空间,增加了数据文件或重做日志文件这些操
作,都会造成 Oracle 数据库控制文件的变化, DBA 应及进行控制文件的备份,备份方法是:
执行SQL 语句:

alter database backup controlfile to '/home/backup/control.bak';

或:

alter database backup controlfile to trace;

这样,会在USER_DUMP_DEST( 初始化参数文件中指定 目录下生成创建控制文件的 SQL
命令。

8.4. 检查失效的索引
Sql>select index_name,table_name,tablespace_name,status From dba_indexes Where
owner='CTAIS2' And sta tus<>'VALID';

注:分区表上的索引status 为 N/A 是正常的 如有失效索引则对该索引做 rebuild ,如
Sql>alter index INDEX_NAME rebuild tablespace TABLESPACE_NAME;

8.5. 检查不起作用的约束
SELECT owner, constraint_name, table_name, constraint_type, status
FROM dba_constraints
WHERE status ='DISABLE' and cons traint_type='P';

如有失效约束则启用,如:
Sql>alter Table TABLE_NAME Enable Constraints CONSTRAINT_NAME;

8.6. 检查无效的 trigger
SELECT owner, trigger_name, table_name, status FROM dba_triggers WHERE status =
'DISABLED';

如有失效触发器则启用,如:
Sql>alter Trigger TRIGGER_NAME Enable;

Oracle数据库日常维护手册相关推荐

  1. Oracle openv目录,2015年ORACLE数据库日常维护手册82281192.doc

    数据库日常维护手册 数据库的安装 操作系统的准备工作 Oracle 数据库的基本软件安装在oradb1和oradb2上.数据文件,日志文件,控制文件通过手工建库时,指定在共享的阵列上.Oradb1与O ...

  2. ORACLE 数据库日常巡检

    Oracle 数据库日常巡检 阅读目录 检查数据库基本状况 检查Oracle相关资源的使用情况 检查Oracle数据库备份结果 检查Oracle数据库性能 检查数据库cpu.I/O.内存性能 检查数据 ...

  3. oracle数据库日常巡检计划

    日常巡检 1.保证数据库正常的运行 2.数据库日常备份检查 3.定期查看alert_SID.log,发现现有的问题 4.定期rebuild索引 5.定期analyze tables和indexs 6. ...

  4. oracle数据库日常管理,讲解Oracle数据库管理员每月的职责以及日常管理工作

    之前为大家介绍了讲解Oracle数据库管理员每周的职责.讲解Oracle数据库管理员的每天的任务职责接下来将为大家带来"讲解Oracle数据库管理员每月的职责以及日常管理工作". ...

  5. Oracle数据库日常维护知识总结

    DBA要定时对数据库的连接情况进行检查,看与数据库建立的会话数目是不是正常,如果建立了过多的连接,会消耗数据库的资源.同时,对一些"挂死"的连接,可能会需要DBA手工进行清理. 首 ...

  6. Oracle数据库日常维护

      在Oracle数据库运行期间,DBA应该对数据库的运行日志及表空间的使用情况进行监控,及早发现数据库中存在的问题.<?xml:namespace prefix = o ns = " ...

  7. oracle 数据库日常巡检:数据库基本状况、oracle资源使用、数据备份结果、性能、cpu等、数据安全、归档日志、会话、SGA/PGA使用情况

    巡检目录 1. 检查数据库基本状况 2. 检查Oracle相关资源的使用情况 3. 检查Oracle数据库备份结果 4. 检查Oracle数据库性能 5. 检查数据库cpu.I/O.内存性能 6. 检 ...

  8. Oracle数据库日常管理之数据备份,恢复及迁移 (第五讲 )

    大家好,以下是我的oracle系列培训课程的第五讲观看地址,本讲主要介绍Oracle数据库从物理备份中恢复! 主要涉及内容有: 1:参数文件与密码文件丢失恢复 2:控制文件丢失恢复 3:表空间,数据文 ...

  9. oracle 运营维护_总结几个ORACLE数据库日常运维常用的命令(持续更新)

    1.重建DBLINK不知道用户密码,不用知道密码,密文在SYS.LINK$存着呢,以sysdba的权限才能取出来 然后通过SQL创建DBLINK CREATE DATABASE LINK " ...

最新文章

  1. 处理 Exception 的几种实践,很优雅,被很多团队采纳!
  2. 链表倒置 (不额外开辟另一块空间)
  3. PHP手机号中间四位用星号*代替显示
  4. BZOJ 1014 火星人prefix
  5. 2017.10.3北京清北综合强化班DAY3
  6. python语言格式化输出_Python字符串格式化输出
  7. 深度学习在处理视频上几种主要技术方法
  8. java之七 高级类设计
  9. 牛客网【每日一题】 合集
  10. 【K8S】Docker向私有仓库拉取/推送镜像报错(http: server gave HTTP response to HTTPS client)
  11. iOS面试总结(待完善)
  12. [转] jQuery 选择器
  13. JavaScript学习笔记(七)--函数
  14. linux上oracle导入mysql_linux下的oracle数据库和表空间的导入导出
  15. 通过HP Loadrunner VuGen来录制安卓的应用
  16. vue-cli+webpack在生成的项目中使用bootstrap的方法
  17. SpringBoot+Vue实现前后端分离的实习管理系统
  18. 红米Note刷机包 移动版 开发版4.9.23 蝰蛇音效 CRT锁屏动画 最流畅的ROM
  19. 一文了解间隙配合、过盈配合、过渡配合的特点、区别及适用范围
  20. Apple Configurator 2提取ipa文件

热门文章

  1. 【经典算法题】水壶问题
  2. 资产配置那些事-常用理财工具3
  3. 解决移动端scrollTo({behavior: “smooth“})滑动效果失效的问题
  4. YOLOv7环境安装及训练时的一些报错及解决方法
  5. 开源OLAP引擎测评报告
  6. python比赛积分类算法题_Python算法题(一)——青蛙跳台阶
  7. 如何将您的应用程序提交到Amazon Appstore
  8. mergedBeanDefinition
  9. 服务器监控文件变化,如何使用nodejs监控文件变化并使用sftp上传到服务器
  10. 把自己发出去的邮件自动抄送给自己