abort oracle,shutdown abort之后为什么需要实例恢复!

讲课时随手记录的大致过程![@more@]

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup mount

ORACLE 例程已经启动。

Total System Global Area 163577856 bytes

Fixed Size 1247876 bytes

Variable Size 83887484 bytes

Database Buffers 75497472 bytes

Redo Buffers 2945024 bytes

数据库装载完毕。

SQL> select checkpoint_change# from v$database;

CHECKPOINT_CHANGE#

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

727692

SQL> select file#,last_change# from v$datafile;

FILE# LAST_CHANGE#

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

1 727692

3 727692

4 727692

10 727692

11 727692

--正常shutdown (immediate,normal、transactional)之前,oracle会发生一个完全检查点,检查点号会记录在last_change of v$datafile,在下次startup之后last_change被置为无穷大,在last_change 中显示为null

SQL> alter database open;

数据库已更改。

SQL> select file#,last_change# from v$datafile;

FILE# LAST_CHANGE#

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

1

3

4

10

11

SQL> shutdown abort

ORACLE 例程已经关闭。

SQL> startup mount

ORACLE 例程已经启动。

Total System Global Area 163577856 bytes

Fixed Size 1247876 bytes

Variable Size 83887484 bytes

Database Buffers 75497472 bytes

Redo Buffers 2945024 bytes

数据库装载完毕。

SQL> select checkpoint_change# from v$database;

CHECKPOINT_CHANGE#

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

727693

--而shutdown abort之后系统并没有发生完全检查点,last_change为null,所以系统在下次startup之后需要进行实例恢复,此时必需要有完好的redo才能保证db正常open

SQL> select file#,last_change# from v$datafile;

FILE# LAST_CHANGE#

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

1

3

4

10

11

SQL> alter database open;

数据库已更改。

SQL>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值