`
fyd222
  • 浏览: 106562 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Oracle 实例恢复

 
阅读更多

--=======================

-- Oracle 实例恢复

--=======================

一、Oracle实例失败

Oracle实例失败多为实例非一致性关闭所致,通常称为崩溃(crash)。实例失败的结果等同于shutdown abort

实例失败的原因

电源负载故障

硬件故障

后台进程失败

异常关闭数据库

实例失败后的状况

数据库可能丢失已提交的事务以及存储了未提交的事务,导致数据库出现不一致的情况

解决方案

使用startup 重新启动实例。实例实现自动恢复,根据联机日志文件前滚提交的事务,回滚未提交的事务

查看告警日志、跟踪日志等找出出现故障的原因

更多常见的故障请参考:Oracle 常见故障及日常规划

二、检查点

检查点在体系结构中已经讨论,实例的恢复与检查点息息相关,因此再次讨论检查点进程

1.什么是检查点

是一个数据库事件,用于减少崩溃恢复时间,检查点位置决定了实例恢复的起始位置

由后台进程触发,触发时ckpt进程通知dbwn进程将数据缓冲区的脏数据写入到数据文件

ckpt进程同时负责更新数据文件的头部信息及控制文件上的检查点信息

2.检查点的触发条件

在日志切换的时候(自动切换或手动切换)

数据库用immediate transaction normal选项shutdown数据库的时候

用户手动触发(alter system checkpoint)

alter tablespace tablespace_name begin | end bakcup

alter tablespace tablespace_name offline

alter database datafile '<dir>' offline

alter tablespace | datafile read only

3.检测点队列

是一个脏数据库链表

检查点队列中的每一条修改过的记录包一个唯一的数据块标识符(日志文件号,块编号,偏移量)

最早队列将被优先写入到数据文件(而不论期间是否被多次修改)

最早队列被写入完成后将从队列中清除

4.检查点的分类

完全检查点

Oracle 8i 以前,当检查点发生时,Oracle将脏缓冲列表上的数据全部写入到数据文件,称为完全检查点,又称常规检查点

特定的触发条件

alter system switch logfile

shutdown normal,immediate,transactional

alter system checkpoint

增量检查点(fast-start checkpoint)

主要是引入了检查点队列机制,sckpt将检查点队列中最老的RBA更新到控制文件,RBA(重做日志块地址)同时将作为实例恢复的起点

增量检查点则细分了完全检查点,使得数据可以周期性按最老的数据块写入到数据文件

每一个脏块会被移到检查点队列里面去,按照LRBALow RBA第一次对此块修改对应的redo block address)来排列

最早写入检查点队列数据块的low rba值是最小的,即便该队列中的最小队列被修改多次,但修改后它在检查点队列里的顺序不会改变

当执行增量检查点时,DBWn从检查点队列按照LRBA的顺序来保证先修改的数据可以按顺序优先被写出来实现检查点的增进

此时ckpt进程使用轻量级的控制文件更新协议,将当前最低的RBA写入控制文件

ckpt在进行轻量级更新时,并不会改写控制文件中数据文件的检查点信息及数据文件头信息

仅仅是记录控制文件检查点SCN并根据增量检查点写出增进RBA信息

通过将完全检查点转变为增量检查点将大大缩短实例的恢复时间

注:更新数据文件头部及控制文件滞后于检查点事件的发生

增量检查点的触发

满足初始话文件log_checkpoint_intervallog_checkpoint_timeout

fast_start_io_targetfast_start_mttr_target的设置的值

最小的日志文件的大小

Buffer Cacha中脏块的数量

部分检查点

表空间的脏数据写入到磁盘

alter tablespace tablespace_name offline 触发

5.完全检查点与增量检查点的差异

完全检查点会将检查点的信息同时写入到控制文件及数据文件

增量检查点则只将RBA写入到控制文件

6.查看检查点的信息,设置LOG_CHECKPOINTS_TO_ALERT参数为true

ALTER SYSTEM SET LOG_CHECKPOINTS_TO_ALERT = TRUE ;

--查看log_checkpoints_to_alert参数

SQL> SHOW PARAMETER log_checkpoints_to_alert

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

log_checkpoints_to_alert boolean FALSE

--设置log_checkpoints_to_alert参数

SQL> ALTER SYSTEM set log_checkpoints_to_alert = TRUE;

System altered.

--清空告警日志文件的内容

SQL> ho cat /dev/null > /u01/app/oracle/admin/orcl/bdump/alert_orcl.log

--查看数据文件头部信息中控制文件的信息为3037172

SQL> SELECT file#,status,tablespace_name ,

2 dbms_flashback.get_system_change_number cur_scn,

3 to_char(resetlogs_time,'yyyy-mm-dd hh24:mi:ss') rst_dt,

4 resetlogs_change# rst_scn,

5 to_char(checkpoint_time,'yyyy-mm-dd hh24:mi:ss') ckpt_dt,

6 checkpoint_change# ckpt_scn,checkpoint_count ckpt_cnt

7 FROM v$datafile_header;

FILE# STATUS TABLESPACE_NAME CUR_SCN RST_DT RST_SCN CKPT_DT CKPT_SCN CKPT_CNT

---------- ------- --------------- ---------- ------------------- ---------- ------------------- ---------- ----------

1 ONLINE SYSTEM 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 531

2 ONLINE UNDOTBS1 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 493

3 ONLINE SYSAUX 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 532

4 ONLINE USERS 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 534

5 ONLINE EXAMPLE 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 489

6 ONLINE TBS1 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 412

7 ONLINE TBS1 3037641 2010-07-20 11:59:23 2837290 2010-07-25 19:05:30 3037172 407

7 rows selected.

SQL> save /u01/app/oracle/oradata/query_1.sql;

Created file /u01/app/oracle/oradata/query_1.sql

SQL> ALTER SYSTEM SWITCH LOGFILE; --切换日志

System altered.

SQL> ho cat /u01/app/oracle/admin/orcl/bdump/alert_orcl.log | more --查看告警日志

Sun Jul 25 19:14:29 2010

Beginning log switch checkpoint up to RBA [0xd.2.10], SCN: 3037657

Thread 1 advanced to log sequence 13

Current log# 3 seq# 13 mem# 0: /u01/app/oracle/oradata/orcl/redo3a.rdo

Current log# 3 seq# 13 mem# 1: /u01/app/oracle/oradata/orcl/redo3b.rdo

SQL> @/u01/app/oracle/oradata/query_1.sql; --数据文件头部滞后分钟后与告警日志记录的SCN相同

FILE# STATUS TABLESPACE_NAME CUR_SCN RST_DT RST_SCN CKPT_DT CKPT_SCN CKPT_CNT

---------- ------- --------------- ---------- ------------------- ---------- ------------------- ---------- ----------

1 ONLINE SYSTEM 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 532

2 ONLINE UNDOTBS1 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 494

3 ONLINE SYSAUX 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 533

4 ONLINE USERS 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 535

5 ONLINE EXAMPLE 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 490

6 ONLINE TBS1 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 413

7 ONLINE TBS1 3037803 2010-07-20 11:59:23 2837290 2010-07-25 19:14:29 3037657 408

SQL> SELECT TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') FROM dual; --时间滞后分钟 19:19:59 - 19:14:29

TO_CHAR(SYSDATE,'YY'

-------------------

2010-07-25 19:19:59

SQL> ALTER SYSTEM CHECKPOINT; --产生检查点

System altered.

SQL> ho cat /u01/app/oracle/admin/orcl/bdump/alert_orcl.log | more --查看告警日志中的SCN: 3037881

Sun Jul 25 19:14:29 2010

Beginning log switch checkpoint up to RBA [0xd.2.10], SCN: 3037657

Thread 1 advanced to log sequence 13

Current log# 3 seq# 13 mem# 0: /u01/app/oracle/oradata/orcl/redo3a.rdo

Current log# 3 seq# 13 mem# 1: /u01/app/oracle/oradata/orcl/redo3b.rdo

Sun Jul 25 19:19:34 2010

Completed checkpoint up to RBA [0xd.2.10], SCN: 3037657

Sun Jul 25 19:21:55 2010

Beginning global checkpoint up to RBA [0xd.116.10], SCN: 3037881

Completed checkpoint up to RBA [0xd.116.10], SCN: 3037881

SQL> @/u01/app/oracle/oradata/query_1.sql; --数据文件头部同步与告警日志记录的SCN相同,为3037881

FILE# STATUS TABLESPACE_NAME CUR_SCN RST_DT RST_SCN CKPT_DT CKPT_SCN CKPT_CNT

---------- ------- --------------- ---------- ------------------- ---------- ------------------- ---------- ----------

1 ONLINE SYSTEM 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 533

2 ONLINE UNDOTBS1 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 495

3 ONLINE SYSAUX 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 534

4 ONLINE USERS 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 536

5 ONLINE EXAMPLE 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 491

6 ONLINE TBS1 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 414

7 ONLINE TBS1 3037890 2010-07-20 11:59:23 2837290 2010-07-25 19:21:55 3037881 409

--查看完全检查点

SQL> SELECT addr,indx ,rtckp_scn,

2 rtckp_tim,

3 rtckp_rba_seq,rtckp_rba_bno

4 FROM x$kccrt;

ADDR INDX RTCKP_SCN RTCKP_TIM RTCKP_RBA_SEQ RTCKP_RBA_BNO

-------- ---------- ---------------- -------------------- ------------- -------------

B7D59C10 0 3037881 07/25/2010 19:21:55 13 278

SQL> show parameter log_check --查看log_checkpoint_timeout的值

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

log_checkpoint_interval integer 0

log_checkpoint_timeout integer 1800

log_checkpoints_to_alert boolean TRUE

ho cat /u01/app/oracle/admin/orcl/bdump/alert_orcl.log --告警日志文件中Incremental checkpoint

----------------------------------------------------------------------------------

Sun Jul 25 19:22:46 2010

Incremental checkpoint up to RBA [0xd.119.0], current log tail at RBA [0xd.119.0]

Sun Jul 25 19:52:51 2010

Incremental checkpoint up to RBA [0xd.37a.0], current log tail at RBA [0xd.420.0]

---------------------------------------------------------------------------------

SQL> select CPDRT,CPLRBA_SEQ||'.'||CPLRBA_BNO||'.'||CPLRBA_BOF "Low RBA",

2 CPODR_SEQ||'.'||CPODR_BNO||'.'||CPODR_BOF "On disk RBA",CPODS,CPODT,CPHBT

3 from x$kcccp where indx = 0; --获得控制文件中增量检查点的信息

CPDRT Low RBA On disk RBA CPODS CPODT CPHBT

---------- ------------------- ------------- ------- -------------------- --------

97 13.5574.0 13.6391.0 3041226 07/25/2010 22:16:37 725323317

--CPDRT列是检查点队列中的脏块数目.

--CPODS列是on disk rbascn

--CPODT列是on disk rba的时间戳

--CPHBT列是心跳ITPUB个人空间

7.更详细的检查点介绍:针对checkpoint的概要分析

晶晶实验九之详细论述增量检查点篇

三、实例恢复

1.当打开非一致性关闭或shutdown abort数据库时,将导致实例恢复

2.实例恢复过程为自动

3.使用联机重做日志文件中的信息来同步数据文件

4.涉及到两类不同的操作

前滚:数据文件被还原到实例失败之前的状态

回滚:已修改但未提交的数据将被撤销到修改之前的状态

四、实例恢复的过程

下面的图片来自Oracle官方教材

实例恢复过程

1.首先Oracle会比较控制文件中检查点与数据文件头部信息,发现数据不一致

2.从最后检查点之后到日志文件尾部将被重新应用到数据文件,同时产生undo信息(回滚),此阶段也称为cache recovery

3.数据文件中包含已提交或未提交的数据,尽管存在未提交的数据,此时数据库已经被打开,允许用户连接

4.未提交的事务将被回滚

5.数据文件中仅包含已提交的数据

五、调整实例恢复

1.为参数文件中对恢复过程有影响的联机日志记录数量和数据块设置合适的大小

2.调整联机日志文件的大小来影响检查点发生的频率

3.使用SQL 命令发生检查点事件

4.使用Fast-start fault recovery

5.几个恢复相关的参数

LOG_CHECKPOINT_TIMEOUT -->两次checkpoint之间间隔的时间(单位是秒) ,该参数现已很少使用

LOG_CHECKPOINT_INTERVAL -->两次checkpoint之间redo block 数据块的个数(不是db_block),

-- redo block size = os block size 该参数现已很少使用

FAST_START_MTTR_TARGET -->指定多长时间完成实例恢复(单位是秒) (后面演示中重点讨论)

RECOVERY_PARALLELISM -->指定前滚时的并发度

FAST_START_PARALLEL_ROLLBACK -->回滚阶段时预先UNDO需要使用的块,然后增加回滚并发度

-- 2CPU建议设置为LO,四路CPU建议设置为HI,否则缺省置为false

FAST_START_IO_TARGET -->数据库宕机所要做的恢复所需的IO的数量,10g之后很少使用

六、实例恢复相关的视图

V$INSTACE_RECOVERY -->查看fast_start_mttr_target设置以及系统MTTR相关信息

V$FAST_START_SERVERS -->事务回滚时相关并发信息

V$FAST_START_TRANSACTION -->正在恢复的事务的相关信息

完全检查点

select * from X$KCCRT where indx=0;

增量检查点

SQL> select * from X$KCCCP where indx=0;

七、实例恢复演示

--删除告警日志

SQL> ho rm -f /u01/app/oracle/admin/orcl/bdump/alert_orcl.log

SQL> SELECT * FROM scott.emp WHERE ename = 'SCOTT';

EMPNO ENAME JOB MGR HIREDATE SAL DEPTNO

---------- ------------------------------ --------- ---------- --------- ---------- ----------

7788 SCOTT ANALYST 7566 19-APR-87 7100 20

--更新SCOTT的薪水且提交事务

SQL> UPDATE scott.emp SET sal = sal / 2 WHERE ename = 'SCOTT';

1 row updated.

SQL> COMMIT;

Commit complete.

--插入两条新记录且不提交事务

SQL> INSERT INTO scott.emp(empno,ename,job) SELECT '2001','Mark','Develpoer' FROM dual;

1 row created.

SQL> INSERT INTO scott.emp(empno,ename,job) SELECT '2002','Mary','Designer' FROM dual;

1 row created.

SQL> SELECT * FROM scott.emp WHERE empno IN (2001,2002);

EMPNO ENAME JOB MGR HIREDATE SAL DEPTNO

---------- ------------------------------ --------- ---------- --------- ---------- ----------

2001 Mark Develpoer

2002 Mary Designer

--强制关闭实例并重启实例,则实例将自动回滚

SQL> SHUTDOWN ABORT;

ORACLE instance shut down.

SQL> STARTUP

ORACLE instance started.

Total System Global Area 251658240 bytes

Fixed Size 1218796 bytes

Variable Size 88082196 bytes

Database Buffers 159383552 bytes

Redo Buffers 2973696 bytes

Database mounted.

Database opened.

--从告警日志中获得回滚的相关信息

SQL> ho ls /u01/app/oracle/admin/orcl/bdump

alert_orcl.log orcl_arc0_4016.trc orcl_arc1_4018.trc orcl_lgwr_3995.trc

SQL> ho cat /u01/app/oracle/admin/orcl/bdump/alert_orcl.log

----------------------------------------------------------------

ALTER DATABASE MOUNT

Thu Jul 22 12:44:40 2010

Setting recovery target incarnation to 10

Thu Jul 22 12:44:40 2010

Successful mount of redo thread 1, with mount id 1252833332

Thu Jul 22 12:44:40 2010

Database mounted in Exclusive Mode

Completed: ALTER DATABASE MOUNT

Thu Jul 22 12:44:41 2010

ALTER DATABASE OPEN

Thu Jul 22 12:44:41 2010

Beginning crash recovery of 1 threads --开始crash recovery

Thu Jul 22 12:44:41 2010

Started redo scan --扫描redo

Thu Jul 22 12:44:42 2010

Completed redo scan

142 redo blocks read, 58 data blocks need recovery

Thu Jul 22 12:44:42 2010

Started redo application at

Thread 1: logseq 4, block 3156

Thu Jul 22 12:44:42 2010

Recovery of Online Redo Log: Thread 1 Group 3 Seq 4 Reading mem 0

Mem# 0 errs 0: /u01/app/oracle/oradata/orcl/redo3a.rdo

Mem# 1 errs 0: /u01/app/oracle/oradata/orcl/redo3b.rdo

Thu Jul 22 12:44:42 2010

Completed redo application

Thu Jul 22 12:44:43 2010

Completed crash recovery at --完成恢复

Thread 1: logseq 4, block 3298, scn 2921577

58 data blocks read, 58 data blocks written, 142 redo blocks read

Thu Jul 22 12:44:43 2010

LGWR: STARTING ARCH PROCESSES

ARC0: Archival started

ARC1: Archival started

LGWR: STARTING ARCH PROCESSES COMPLETE

ARC1 started with pid=17, OS id=4018

ARC0 started with pid=16, OS id=4016

Thu Jul 22 12:44:45 2010

Thread 1 advanced to log sequence 5

Thread 1 opened at log sequence 5

Current log# 1 seq# 5 mem# 0: /u01/app/oracle/oradata/orcl/redo1a.rdo

Current log# 1 seq# 5 mem# 1: /u01/app/oracle/oradata/orcl/redo1b.rdo

Successful open of redo thread 1

Thu Jul 22 12:44:45 2010

MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set --FAST_START_MTTR_TARGET未设置

--------------------------------------------------------------------------------------------------

--scott用户已提交,故恢复之后为已提交的状态

SQL> SELECT * FROM scott.emp WHERE ename = 'SCOTT';

EMPNO ENAME JOB MGR HIREDATE SAL DEPTNO

---------- ------------------------------ --------- ---------- --------- ---------- ----------

7788 SCOTT ANALYST 7566 19-APR-87 3550 20

--新增加的两条记录未提交,实例恢复之后被回滚

SQL> SELECT * FROM scott.emp WHERE empno IN (2001,2002);

no rows selected

八、设置FAST_START_MTTR_TARGET参数

/*

FAST_START_MTTR_TARGET参数的作用就是减少cache recovery的恢复时间。

当设定了FAST_START_MTTR_TARGET值后,数据库管理增量检查点写入尝试达到设定的目标恢复时间

如果设定的值合理,则整个恢复过程将接近所设定的时间

注:当使用FAST_START_MTTR_TARGET参数时,应当关闭FAST_START_IO_TARGET, LOG_CHECKPOINT_INTERVAL,

LOG_CHECKPOINT_TIMEOUT 参数。如果设定这些参数将会妨碍cache recovery满足指定的FAST_START_MTTR_TARGET

应当为FAST_START_MTTR_TARGET设置合理的时间值

缺省值为0,表示关闭检查点自动调整功能

最大值为3600,当设定值大于3600,将被自动取整为3600

最小值为1,当设定为时1,事实上不切合实际因此,恢复时间也不能达到设定的目标值 */

更多关于FAST_START_MTTR_TARGET参数的优化:Instance Recovery Performance Tuning: Fast-Start Fault Recovery

--fast_start_mttr_target的值置为0

SQL> alter system set fast_start_mttr_target = 0;

System altered.

SQL> CREATE TABLE tb_test AS SELECT * FROM all_objects WHERE 1=2; --新建一张表

Table created.

SQL> INSERT INTO tb_test SELECT * FROM all_objects; --插入记录到新表

49945 rows created.

--下面的查询中可以看到ESTIMATED_MTTR为28

SQL> SELECT recovery_estimated_ios,actual_redo_blks,target_mttr,estimated_mttr,

2 optimal_logfile_size FROM v$instance_recovery;

RECOVERY_ESTIMATED_IOS ACTUAL_REDO_BLKS TARGET_MTTR ESTIMATED_MTTR OPTIMAL_LOGFILE_SIZE

---------------------- ---------------- ----------- -------------- --------------------

762 11661 0 28

SQL> COMMIT; --提交事务

Commit complete.

SQL> SELECT recovery_estimated_ios,actual_redo_blks,target_mttr,estimated_mttr,

2 optimal_logfile_size FROM v$instance_recovery;

RECOVERY_ESTIMATED_IOS ACTUAL_REDO_BLKS TARGET_MTTR ESTIMATED_MTTR OPTIMAL_LOGFILE_SIZE

---------------------- ---------------- ----------- -------------- --------------------

767 11669 0 28

--由上可知,commit仅仅是将日志缓冲区的内容更新到日志文件

SQL> ALTER SYSTEM CHECKPOINT; --手动更新检查点

System altered.

SQL> SELECT recovery_estimated_ios,actual_redo_blks,target_mttr,estimated_mttr,

2 optimal_logfile_size FROM v$instance_recovery;

RECOVERY_ESTIMATED_IOS ACTUAL_REDO_BLKS TARGET_MTTR ESTIMATED_MTTR OPTIMAL_LOGFILE_SIZE

---------------------- ---------------- ----------- -------------- --------------------

0 0 0 28

--上面的查询可以看到字段RECOVERY_ESTIMATED_IOSACTUAL_REDO_BLKS 的值已经减少到0

--检查点的产生将database buffer中的脏内容写入到了数据文件中

--ESTIMATED_MTTR没有发生变化,因为该列为非实时更新列

九、更多

Oracle实例和Oracle数据库(Oracle体系结构)

Oracle 用户、对象权限、系统权限

Oracle 角色、配置文件

Oracle 联机重做日志文件(ONLINE LOG FILE)

Oracle 控制文件(CONTROLFILE)

Oracle 空间与数据文件

分享到:
评论

相关推荐

    Oracle实例恢复

    Oracle实例恢复是一个重要的数据库管理任务,特别是在系统重装或硬件故障之后。Oracle数据库实例是由内存结构和后台进程组成,它们共同工作以管理数据库的运行。当系统经历重大变更,如操作系统重装,原有的实例配置...

    Oracle实例死掉的情况下如何恢复

    ### Oracle实例死掉的情况下如何恢复 #### 概述 在Oracle数据库管理中,有时会遇到Oracle实例意外停止或“死亡”的情况。这种情况可能导致数据不可访问,严重时甚至会影响到业务连续性。本文将详细介绍如何在...

    Oracle备份和恢复实例

    在其它情况 Oracle 在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。如果需要,从装配状态变为打开状态,自动地激发实例恢复。 在实例恢复过程中,Oracle 会执行以下操作:(1)为了解恢复数据文件...

    手动创建oracle实例

    手动创建Oracle实例是一个涉及多个步骤的过程,这不仅考验着数据库管理员对Oracle数据库系统的理解,也体现了其在系统配置与管理方面的能力。以下将基于提供的文件信息,深入解析手动创建Oracle实例的关键步骤及相关...

    oracle修改实例名

    实例名(也称作SID,即系统标识符)是数据库安装后在操作系统中唯一标识一个Oracle实例的名称。在Oracle数据库的管理中,正确地修改实例名是数据库维护的关键步骤之一,特别是在迁移或者整合数据库时。 修改Oracle...

    模拟Oracle实例崩溃后的恢复

    以下是对模拟Oracle实例崩溃后的恢复步骤的详细解释: 1. **设置数据库为归档模式**: 在Oracle中,归档模式是进行完整数据库恢复的关键,因为它记录所有事务的更改。通过SQL命令`archive log list`可以检查当前...

    oracle实例名,服务名等概念区别与联系

    Oracle 实例名、服务名等概念区别与联系 Oracle 数据库中的实例名、服务名等概念经常会让初学者感到困惑。以下是对这些概念的详细解释。 数据库名 数据库名是数据库的标识,相当于人的身份证号码。它用参数 DB_...

    oracle精品实例,练习总结

    这个"oracle精品实例,练习总结"的压缩包文件显然包含了nickcheng个人整理的一系列关于Oracle数据库的操作实例和学习心得,旨在帮助用户深入理解和应用Oracle技术。下面我们将深入探讨Oracle数据库的一些关键知识点。...

    操作系统重装后oracle数据库的恢复

    4、oracle实例服务的恢复 5、注册表中本地默认实例的恢复 6、计算机管理-用户组中ORA_DBA角色的恢复 操作步骤: 1、系统环境变量的恢复 在系统环境变量path项之前增加oracle系统可执行程序及动态链接库资源如"D:\...

    oracle实例内存(SGA和PGA)调整

    Oracle 实例内存(SGA 和 PGA)调整 Oracle 实例内存调整是 Oracle 数据库性能优化的重要方面。SGA(System Global Area)和 PGA(Process Global Area)是 Oracle 实例中的两个主要内存区域。本文将详细介绍 SGA 和 ...

    oracle实例名[文].pdf

    Oracle数据库是企业级广泛应用的数据库管理系统,其核心概念包括数据库名、实例名和SID等。本文将详细解析这些概念以及它们在Oracle操作中的作用。 首先,数据库名(db_name)是区分不同数据库的唯一标识。它在...

    oracle 数据恢复 参考文档

    Oracle 数据恢复参考文档 Oracle 数据恢复是指在 Oracle 数据库崩溃或损坏时,通过各种方法和技术恢复数据库的过程。本文档旨在提供一种有效的 Oracle 数据恢复方法,以便快速恢复 Oracle 数据库。 Oracle 数据库...

    Veeam 备份恢复oracle数据库详细配置文档

    Veeam 备份恢复 Oracle 数据库详细配置文档 本文档旨在详细介绍如何使用 Veeam 备份恢复 Oracle 数据库的配置过程。该文档将指导读者从环境准备到推送 Oracle RMAN Plugin,再到创建备份作业和运行备份作业,最后...

    oracle视频教程 下载地址

    Oracle实例恢复是当数据库出现故障时,系统自动执行的一系列操作来恢复到一个一致的状态。这部分内容可能包含: - 故障类型的分类,如实例故障、介质故障等。 - 恢复的基本流程,包括使用重做日志文件和归档日志...

    Oracle数据库备份与恢复实例讲解.pptx

    "Oracle数据库备份与恢复实例讲解" Oracle数据库备份与恢复是数据库管理员的重要任务之一。备份是指将数据库中的数据复制到其他媒体上,以便在数据库故障或数据丢失时能够快速恢复数据库。恢复是指从备份中恢复...

    Oracle19c rac备份数据通过rman恢复到单实例

    ### Oracle 19c RAC 数据库通过 RMAN 恢复至单实例流程详解 #### 背景概述 在进行Oracle 19c RAC(Real Application Clusters)数据库的数据备份与恢复操作时,可能会遇到需要将RAC集群环境下的备份数据恢复到单...

    Oracle通过DBF恢复数据

    ### Oracle通过DBF恢复数据 #### 一、背景介绍 在日常工作中,Oracle数据库作为企业级数据管理系统之一,经常面临着各种意外情况,如误删除、误操作或系统故障导致的数据丢失。在这种情况下,如何有效地恢复数据...

    oracle数据恢复工具

    Oracle数据恢复工具能够处理DMP文件,意味着它可以解析文件内容,恢复其中的数据到原始或新的数据库实例中。 在实际的数据恢复过程中,首先需要评估数据丢失的严重程度和类型,然后选择适当的恢复策略。例如,如果...

Global site tag (gtag.js) - Google Analytics