1、数据库的完整启动过程
(1)创建并启动与数据库对应的实例。主要执行:为实例创建一系列后台进程和服务进程,并且在内存中创建SGA等待区。
(2)为实例加载数据库。主要执行:打开数据库的控制文件,获取数据库名称、数据文件的位置和名称等有关数据库物理结构的信息。
(3)将数据库设置为打开状态。打开所有处于联机状态的数据库文件和重做日志文件。
2、数据库启动的各种模式
(1)启动实例不加载数据库(NOMOUNT模式):只会创建实例、并不加载数据库。在创建新数据库、重建控制文件时,使用该模式。
startup nomount
注:因为数据库打开后默认open状态,所以需要先关闭,才能以NOMOUNT模式启动。
(2)加载数据但不打开数据库(MOUNT模式):为实例加载数据库,却保持数据库的关闭状态。在重命名数据文件,添加、删除或重命名重做日志文件,执行数据库完全恢复操作,改变数据库的归档模式时,使用该模式。
startup mount
(3)打开数据库(OPEN模式):正常的启动模式。用户只要对数据库进行操作时,数据库必须处于OPEN模式。
startup
(4)强制启动数据库:在某些情况下,上述启动模式都挖法启动数据库,就需要强行启动。
startup force
3、数据库关闭的各种方式
(1)正常关闭方式(NORMAL):如果对关闭数据库的时间没有限制,通常会使用正常方式来关闭数据库。
shutdown normal
注:当多用户时,正常关闭方式会一直等待。
(2)立即关闭方式(IMMEDIATE):能够在尽可能短的时间内关闭数据库。
shutdown immediate
(3)事务关闭方式(TRANSACTIONAL):介于正常关闭方式和立即关闭方式之间,能够在尽可能短的时间内关闭数据库,且能够保证当前所有的活动事务都可以被提交。
shutdown transactional
(4)终止关闭方式(ABORT):如果上述三种关闭模式都无法关闭数据库,就采用该方式来关闭数据库。该方式将丢失一部分数据信息,会对数据库的完整性造成损害。
shutdown abort