数据库启动与关闭

数据库启动

sql>sqlplus
sql>conn / as sysdba--连接数据库
sql>startup nomount --打开数据库实例
sql>select * from v$controlfile;
sql>show parameter controlfile;
sql>alter database mount; --oracle根据参数文件中控制文件的位置找到并打开控制文件,

读取控制文件中的各种参数信息,如数据文件和日志文件的位置。
sql>select * from v$controlfile;
sql>alter database open;--数据库将打开数据文件并进行一系列的检查工作,这些检查工作作用于数据库恢复。

数据库关闭

shutdown immediate

这种方式可以较快且安全地关闭数据库,是DBA经常采用的一种关闭数据库的方式,此时oracle会做一些操作,

中断当前事务,回滚未提交的事务,强制断开所有用户连接,执行检查点把脏数据写到数据文件中。虽然参数immediate

有立即关闭数据库的含义,但是它只是对应的概念,如果当前事务很多,且业务量很大,则中断事务以及回滚数据、

断开连接的用户都需要时间。

shutdown transactional

使用transactional参数时,数据库当前的连接继续执行,但不允许新的连接,一旦当前所有的事务执行完毕,

则关闭数据库。

显然这种方式,通常情况下,在生产库系统章,这方式也不会快速关闭数据库,因为如果当前的某些事务一直执行,

或许会用几天时间关闭数据库。

shutdown abort

这是一种很不安全地关闭数据的方法,最好不要使用该方式关闭数据库。该方法,关闭数据库时,oracle会断开当前

所有用户连接,拒绝新的连接,断开当前所有执行的事务,立即关闭数据库。使用这种方式关闭数据库,当数据库重启时

需要记性数据库恢复,因为它不会对未完成事务回滚,也不会执行检查点操作。

shutdown normal

这种方式是shutdown数据库的默认方式,如果用户输入showdown,则默认采用normal参数,这种方法关闭数据库时,

不允许新的数据库连接,只有当前的所有连接都退出时才会关闭数据库,这是一种安全地关闭数据库的方式,但是

如果有大量用户连接,则需要较长时间关闭数据库。

你可能感兴趣的:(数据库启动与关闭)