首页 电脑 电脑学堂 查看内容

谈谈Oracle数据库的关闭

2014-11-16 22:50 901 0

摘要: 之前说过了Oracle数据库的启动,今天再来说说Oracle数据库的关闭。一、数据库关闭的三个阶段Oracle数据库启动过程包括三个步骤: NOMOUNT -> MOUNT -> OPEN...
关键词: 数据库 SHUTDOWN Database 方式 命令 Oracle 事务 Nov CLOSE Archival

之前说过了Oracle数据库的启动,今天再来说说Oracle数据库的关闭。一、数据库关闭的三个阶段Oracle数据库启动过程包括三个步骤: NOMOUNT -> MOUNT -> OPEN,数据库的SHUTDOWN实际也是有三个步骤:CLOSE -> DISMOUNT - > SHUTDOWN。SQL> SHUTDOWN;  Database closed.Database dismounted.ORACLE instance shut down.也可从STARTUP状态,按照CLOSE -> DISMOUNT - > SHUTDOWN的顺序逐步关闭。1、数据库关闭命令:SQL> alter database close;Database altered.Elapsed: 00:00:02.20告警日志(Alert Log):Sat Nov 15 11:48:35 2014alter database closeWarning: ALTER DATABASE CLOSE is not a publicly supported command.Sat Nov 15 11:48:35 2014Stopping background process CJQ0Sat Nov 15 11:48:35 2014SMON: disabling tx recoveryStopping background process QMNCAll dispatchers and shared servers shutdownCLOSE: killing server sessions.CLOSE: all sessions shutdown successfully.SMON: disabling cache recoverySat Nov 15 11:48:37 2014Shutting down archive processesArchiving is disabledSat Nov 15 11:48:37 2014ARCH shutting downARC3: Archival stoppedSat Nov 15 11:48:37 2014ARCH shutting downARC2: Archival stoppedSat Nov 15 11:48:37 2014ARCH shutting downARC1: Archival stoppedSat Nov 15 11:48:37 2014ARCH shutting downARC0: Archival stoppedThread 1 closed at log sequence 4Successful close of redo thread 1Completed: alter database close2、数据库卸载命令:SQL> alter database dismount;Database altered.Elapsed: 00:00:00.05告警日志:Sat Nov 15 11:49:40 2014idle dispatcher 'D000' terminated, pid = (17, 1)Sat Nov 15 11:50:04 2014alter database dismountShutting down archive processesArchiving is disabledCompleted: alter database dismount3、关闭数据库实例命令:SQL> shutdown;ORA-01507: database not mountedORACLE instance shut down.SQL> 告警日志:Sat Nov 15 11:51:22 2014Shutting down instance (normal)Shutting down instance: further logons disabledStopping background process MMNLStopping background process MMONLicense high water mark = 4All dispatchers and shared servers shutdownALTER DATABASE CLOSE NORMALORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...ARCH: Archival disabled due to shutdown: 1090Shutting down archive processesArchiving is disabledSat Nov 15 11:51:25 2014Stopping background process VKTMARCH: Archival disabled due to shutdown: 1090Shutting down archive processesArchiving is disabledSat Nov 15 11:51:27 2014Instance shutdown complete二、数据库关闭的四种选项1、SHUTDOWN NORMAL这是数据库关闭SHUTDOWN命令的默认选项。也就是说如果你发出SHUTDOWN这样的命令,也即是SHUTDOWN NORNAL的意思。发出该命令后,任何新的连接都将再不允许连接到数据库。在数据库关闭之前,Oracle将等待目前连接的所有用户都从数据库中退出后才开始关闭数据库。采用这种方式关闭数据库,在下一次启动时不需要进行任何的实例恢复。但是由于Normal方式要等所有用户断开连接后才能关闭数据库,所有等待时间可能超长;在生产环境中,这种方式几乎无法关闭有大量用户连接的数据库,所以很少被采用。2、SHUTDOWN IMMEDIATE这是最为常用的一种关闭数据库的方式,使用这个命令时,当前正在被Oracle处理的事务立即中断,未提交的事务将全部回滚,系统不等待连接到数据库的用户退出,强制断开所有的连接用户。然后执行检查点,将变更数据全部写回数据文件,关闭数据库。使用这种方式关闭数据库,下次启动数据库时不需要进行实例恢复,是一种安全的数据库关闭方式。但是注意,如果数据库系统繁忙,当前有大量事务执行,那么使用此选项关闭数据库也可能需要大量时间。3、SHUTDOWN TRANSACTIONAL该选项仅在Oracle 8i后才可以使用。该命令常用来计划关闭数据库,它使当前连接到系统且正在活动的事务执行完毕,运行该命令后,任何新的连接和事务都是不允许的。在所有活动的事务完成后,数据库将和SHUTDOWN IMMEDIATE同样的方式关闭数据库。4、SHUTDOWN ABORT最不推荐采用的数据库关闭方式,使用此选项,数据库会立即终止所有用户连接、中断所有事务、关闭数据库,使用这种方式关闭数据库,未完成事务不会回滚,数据库也不会执行检查点,所以下次启动市,数据库必须执行实例恢复,实例恢复可能会需要大量的时间,数据库启动也因此可能需要等候很长时间。ABORT方式关闭数据库,就类似于数据库服务器突然断电,可能会导致不一致的情况出现,所以除非不得已,轻易不要使用这种方式关闭数据库。参考:谈谈Oracle数据库的启动 Remote DBA team- Oracle Database Startup & Shutdown Process
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部