您的位置:首页 > 数据库 > Oracle

Oracle数据库的启动和关闭

2015-08-21 11:15 399 查看
启动数据库,并且数据库服务能够正常使用,我们需要启动数据库的监听服务和和数据库服务。

1.启动监听

监听是给服务器和客户端之间建立连接的作用,监听指定的端口,响应用户的连接请求。连接上的用户可以对数据库服务器进行相应的操作。

监听的相关命令:
    启动监听:lsnrctl start 
    停止监听:lsnrctl stop 
    查看监听状态:lsnrctl status

第一步:启动数据库监听。


C:\Users\admin>lsnrctl start

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 25-AUG-2015 08:57
:06

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

Starting tnslsnr: please wait...

TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
System parameter file is D:\app\admin\product\11.2.0\dbhome_1\network\admin\list
ener.ora
Log messages written to d:\app\admin\diag\tnslsnr\pfzhang3_PC\listener\alert\log
.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521
ipc)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Produ
ction
Start Date                25-AUG-2015 08:57:12
Uptime                    0 days 0 hr. 0 min. 5 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   D:\app\admin\product\11.2.0\dbhome_1\network\admin\lis
tener.ora
Listener Log File         d:\app\admin\diag\tnslsnr\pfzhang3_PC\listener\alert\l
og.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).
  Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully


2.启动数据库实例

第二步:在命令提示符中输入sqlplus /nolog,表示不登陆任何数据库系统。

C:\Users\admin>sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Tue Aug 25 08:43:24 2015

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

SQL>

第三步:用超级管理员登录到我们创建的数据库实例。登录结果显示idle状态,表示数据库实例还没有启动。

SQL> connect / as sysdba
Connected to an idle instance.

第四步:启动数据库实例

SQL> startup
ORACLE instance started.

Total System Global Area 3240239104 bytes
Fixed Size                  2180104 bytes
Variable Size            2097155064 bytes
Database Buffers         1124073472 bytes
Redo Buffers               16830464 bytes
Database mounted.
Database opened.

至此:通过标题1和2中的第一步到第四步,数据库已经启动完毕。


3. 关闭监听

第一步:关闭监听

C:\Users\admin>lsnrctl stop

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 25-AUG-2015 09:05:00

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
The command completed successfully

4. 关闭数据库实例

重复启动数据库实例的第二步和第三步。
    第四步:关闭数据库实例

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

至此,通过标题3和4中的第一步到第四步,数据库已经关闭。

5. 深入实例的启动和关闭

5.1数据库的实例启动分为三个阶段:

nomount阶段
    通过startup nomount命令可以进入该阶段,启动到该阶段时,我们可以重建控制文件。
    mount阶段
    可以通过alter database mount命令从nomount阶段进入mount阶段,启动到该阶段时,我们可以进行数据数据库文件或联机日志文件的转移、对数据库进行还原和恢复、启动归档等操作。
    注:mount指的是将实例与数据库物理文件关联的过程。
    open阶段
    可以通过alter database open命令从mount阶段进入open阶段,或者在执行startup命令时不指定具体阶段,则进入open阶段。
    如果我们指定了启动某个阶段,则必须一个阶段一个阶段网上走,不能跳。

5.2数据库库实例的关闭:

我们可以发出shutdown命令来关闭数据库,但不可以像startup那样指定到不同的阶段;后面可以跟四个不同的选项,表示四种不同的关闭方式。
      shutdown [normal|transactional|immediate|abort]
    abort
    模拟数据库服务器突然断电的情况。这时实例所在的内存立即被清空。实例里所含有的数据都还没来得及写入数据文件。如果这时有某些任务正在运行,则这些事务被立即中断。这些被中断的事务既没有提交也没有回滚,处于中间状态。
    immediate
    Oracle会中断当前正在运行的所有事务,并回滚这些事务;回滚完毕以后,强行中断当前正处于连接状态的用户,将实例里所有的数据都写入数据文件;做完这些事情以后,将实例所占的内存清空。


transactional
    Oracle会等待当前正在运行的事务主动提交或回滚;当所有事务都主动结束以后,会强行中断当前正处于连接状态的用户,将实例里所有数据都写入数据文件;做完这些事情以后,将实例所占的内存清空。因此:如果用户对事务始终都不提交或回滚,则实例是无法被关闭的。
    normal
    Oracle不仅会等当前正在运行的事务主动提交或回滚,而且还会等当前正处于连接状态的所有用户都主动断开连接,只要有一个用户不断开连接,实例就无法关闭。
    很明显:abort、immediate、transactional、normal关闭速度由快倒慢。
    一般采用shutdown immediate命令来关闭数据库;即可以获得一个关闭后干净的数据,关闭数据库也会较快。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: