在windows下启动和关闭oracle数据库,有以下几种方式:
一、启动oracle服务
1.计算机管理方式启动服务
* 启动:
从 “计算机管理”-“服务” 可以找到oracle相关的4个服务,通过启动这些服务可以启动oracle数据库;
启动顺序:
* OracleOraDb10g_homeiSQL*Plus 可选
* OracleOraDb10g_homeTNSListener
* OracleDBConsoleorcl
* OracleServiceORCL
* 关闭:
从 “计算机管理”-“服务” 可以找到oracle相关的4个服务,通过关闭这些服务可以关闭oracle数据库;
2.命令行方式启动服务
* 启动:
* OracleOraDb10g_homeiSQL*Plus 可选
从 “计算机管理” - “服务” 启动
* 启动监听器
cmd 下 ,lsnrctl start
* 启动 OracleDBColsoleorcl
cmd 下,emctl start dbconsole
* 启动 OracleServiceORCL
cmd 下,net start oracleserviceorcl
其中 oracleserviceorcl 是oracle数据库实例的windows服务的名称,前缀一般是 oracleservice,后面的orcl 是 orcl 数据库实例名称,根据自己的设定而不同;
二、启动oracle数据库
1.启动Oracle监听程序
a.切换到oracle用户:su - oracle
b.启动监听:lsnrtl start
2.启动数据库
a.切换到oracle用户:su - oracle
b.进入到sqlplus命令行:sqlplus "/ as sysdba"
c.启动数据库:startup
startup 命令参数解释
startup 有七个参数:open、mount、nomount、pfile、force、restrict、recover。缺省不带任何参数时表示是 open。
startup open:打开数据库,允许数据库的访问。当前实例的控制文件中所描述的所有文件都已经打开。
startup mount:mount数据库,仅仅给dba进行管理操作,不允许数据库的用户访问。仅仅只是当前实例的控制文件被打开,数据文件未打开。
startup nomount:仅仅通过初始化文件,分配出sga区,启动数据库后台进程,没有打开控制文件和数据文件。不能访问任何数据库。
startup pfile= filename:以filename为初始化文件启动数据库,不是采用缺省初始化文件。
startup force:中止当前数据库的运行,并开始重新正常的启动数据库。
startup restrict:只允许具有restricted session权限的用户访问数据库。
startup recover:数据库启动,并开始介质恢复。
(1) startup nomount
非安装启动,这种方式启动下可执行:重建控制文件、重建数据库
读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。
(2) startup mount dbname
安装启动,这种方式启动下可执行:
数据库日志归档、
数据库介质恢复、
使数据文件联机或脱机,
重新定位数据文件、重做日志文件。
执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置,
但此时不对数据文件和日志文件进行校验检查。
(3) startup open dbname
先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,
这种方式下可访问数据库中的数据。
(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:Oracleadminoradbpfileinit.ora
(8) startup EXCLUSIVE
3.关闭数据库
a.切换到oracle用户:su - oracle
b.进入到sqlplus命令行:sqlplus "/ as sysdba"
c.关闭数据库:shutdown immediate
shutdown 命令参数解释
shutdown有四个参数:normal、transactional、immediate、abort。缺省不带任何参数时表示是normal。
shutdown normal:不允许新的连接、等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
shutdown transactional:不允许新的连接、不等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
shutdown immediate:不允许新的连接、不等待会话结束、不等待事务结束、做一个检查点并关闭数据文件。没有结束的事务是自动rollback的。启动时不需要实例恢复。
shutdown abort:不允许新的连接、不等待会话结束、不等待事务结束、不做检查点且没有关闭数据文件。启动时自动进行实例恢复。
(1) shutdown normal
正常方式关闭数据库。
(2) shutdown immediate
立即方式关闭数据库。
在SVRMGRL中执行shutdown immediate,数据库并不立即关闭,
而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源),
当使用shutdown不能关闭数据库时,shutdown immediate可以完成数据库关闭的操作。
(3) shutdown abort
直接关闭数据库,正在访问数据库的会话会被突然终止,
如果数据库中有大量操作正在执行,这时执行shutdown abort后,重新启动数据库需要很长时间。