LuoXinLoves 2020-05-11
(一)数据库的启动
启动(STARTUP)一个数据库需要三个步骤。
1.启动Oralce实例
2.由实例装载数据库
3.打开数据库
·
1) STARTUP NOMOUNT
NOMOUNT 选项仅仅启动一个Oracle实例
·
2) STARTUP MOUNT
STARTUP MOUNT 命令启动实例并装载数据库
·
3)STARTUP
STARTUP 命令完成启动实例、装载数据库和打开数据库
·
·
如果采用STARTUP NOMOUNT 的数据库打开方式,就必须采用ALTER DATABASE命令来执行装载和打开数据库的操作必须添加如下命令
STARTUP NOMOUNT
ALTER DATABASE MOUNT
ALTER DATABASE OPEN
·
如果以STARTUP MOUNT 方式打开数据库需要添加如下命令
STARTUP MOUNT
ALTER DATABASE OPEN
·
(二)数据库的关闭
关闭(SHUTDOWN)一个数据库有四种不同关闭选项。
1)SHUTDOWN NORMAL
执行SHUTDOWN NORMAL相当于执行SHUTDOWN
执行该命令后,任何新用户将不再允许连接到数据库,在数据库关闭之前,Oracle将等待已连接的所以用户从数据库退出后才开始关闭数据库。采用这种方式关闭数据库下次启动时不需要在进行任何实例恢复。
·
2)SHUTDOWN IMMEDIATE
该命令是常用的一种关闭数据库的方式,发出该命令后会立即中断正在被Oracle处理的SOL语句。系统不会等待连接到数据库的所有用户退出系统,而会强行回滚当前所有的活动事物,然后断开所有的连接用户。
·
3)SHUTDOWN TRANSACTIONAL
该命令常用来计划关闭数据库,他会等待当前连接到系统且正在活动的事物执行完毕,运行该命令后,任何选新的连接和事物都是不允许的。在所有活动的事物执行完成后,数据库将以和SHUTDOWN IMMEDIATE同样的方式关闭数据库。
·
4)SHUTDOWN ABORT
该命令是关闭数据库最后的选择,是在没有任何办法关闭数据库的情况下不得不采用的方法,一般不要采用。
在以下情况可以考虑使用:
1.数据库处于非正常工作状态,不能使用SHUTDOWN NORMAL 或 SHUTDOWN IMMEDIATE命令关闭数据库。
2.需要立即关闭数据库
3.在重启数据库实例时遇到问题
所有正在运行的SQL语句将立即终止,所有未提交的事物将不会滚,将直接断开所有的用户连接,下一次启动数据库时需要实例恢复。
·
友情提示
在关闭数据库时最好使用SHUTDOWN IMMEDIATE方式,因为这种方式安全且相对较快。不是万不得已不要使用SHUTDOWN ABORT方式,因为这种方式会造成数据丢失,并且恢复数据库也需要较长的时间。