打开数据库
在安装的数据库被打开之前,所有合法的用户(除DBA)都不能对该数据库进行连接和存取;只有被打开以后才能进行连接和存取。在打开数据库的同时,实例也打开在线的数据文件和在线日志文件。如果数据库是由于实例的异常而中止或电源故障而被关闭时,则下次打开它时会自动执行实例恢复。在数据库被打开时,实例试图获取一个或多个回滚段。在分布事务中,若当—个数据库因电源故障等突然被关闭,此时若有一个或多个分布式事务还没提交或回滚,则在该数据库被重新打开时,继续完成实例恢复,RECO后台进程将自动、立即和一致地解决尚未提交或回滚的任何分布事务。
常用打开数据库和实例命令方式
(1)startup nomount
非安装启动,这种启动方式下可执行:重建控制文件、重建数据库和启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。
(2)startup mount dbname
安装启动,这种启动方式下可执行:数据库日志归档、数据库恢复和重新命名一些数据库文件。
(3)startup open dbname
先执行“nomount”,然后执行“mount”,再打开包括Redolog文件在内的所有数据库文件,这种方式下可访问数据库中的数据。
(4)startup等于以下三个命令
startup nomount
alter database mount
alter database open
(5)startup restrict
约束方式启动,这种方式能够启动数据库,但只允许具有一定特权的用户访问,非特权用户访问时,会出现以下提示:
ERROR:
ORA-01035: Oracle 只允许具有RESTRICTED SESSION权限的用户使用。
(6)startup force
强制启动方式,当不能关闭数据库时,可以用startup force来完成数据库的关闭,先关闭数据库,再执行正常启动数据库命令。
(7)startup pfile=参数文件名
带初始化参数文件的启动方式,先读取参数文件,再按参数文件中的设置启动数据库。例:startup pfile=E:\Oracle\admin\oradb\pfile\init.ora
(8)startup exclusive
SQL>conect internal
作为internal连接时,connect命令不需要口令,因为其授权是由操作系统隐式提供的。Internal连接等价于sys连接,它们都是拥有Oracle数据字典的用户。
应用
在Unix下启动Oracle8i,其整个过程步骤如下:
(1)telnet 主机IP或者是主机名
user:***** password:*****
(2)lsnrctl start
(3)svrmgrl
(4)svrmgrl>connect internal
(5)svrmgrl>startup
实例和数据库的关闭
关闭实例的步骤
关闭实例后,SGA从内存撤消,后台进程被停止。关闭实例的步骤如下:
(1)启动SQL*DBA
(2)作为INTERNAL用户与数据库相连接
(3)关闭实例
◆ 关闭数据库
◆ 卸下数据库
◆ 关闭实例
关闭数据库
数据库关闭时,首先将SGA中的所有数据库数据和日志项数据写入相应的数据文件和日志文件。然后关闭所有联机数据文件和日志文件。在数据库关闭后和卸下之前,控制文件仍保持打开,此时如果需要打开时,还可重新打开数据库。