当前位置:文章写作网 >日记 >日记 >oracle学习笔记-数据库启动

oracle学习笔记-数据库启动

2008-10-22 16:34 作者:tshfang 阅读量:6448 推荐10次 | 我要投稿

要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆。

一、连接数据库

sqlplus " / as sysdba"

或者

sqlplus /nolog

二、启动数据库

启动一个数据库需要三个步骤:

1、 创建一个Oracle实例(非安装阶段)

2、 由实例安装数据库(安装阶段)

3、 打开数据库(打开阶段)

startup 参数介绍:

参数: NOMOUNT,MOUNT,OPEN,FORCE,RESTRICT

NOMOUNT选项表示数据库启动时,只启动实例,不安装数据库,不打开数据库。

此选项用于数据库的控制文件全部损坏,需要重新创建数据库控制文件或创建一个新的数据库时试用。

MOUNT选项表示数据库启动时完成的操作是:启动数据库实例,安装数据库,但不打开数据库。

此选项用于修改数据库的运行方式或进行数据库修复。

OPEN选项表示数据库启动时完成的操作是:启动数据库实例,安装数据库, 打开数据库,这是数据库默认启动选项。

FORCE选项表示以强制方式启动数据库。可用于数据库的重新启动。

RESTRICT选项表示数据库以受限方式打开,只有具有RESTRICT SESSION权限的用户可以连接数据库,没有RESTRICT SESSION权限的用户不 能连接数据库

startup 实例介绍

1、startup nomount

非安装启动,这种方式启动下可执行:重建控制文件、重建数据库

启动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:\Oracle\admin\oradb\pfile\init.ora

8、startup EXCLUSIVE

三、关闭数据库

shutdown参数介绍

参数: NORMAL,IMMEDIATE,ABORT,TRANSACTIONAL

参数说明:

NORMAL关机方式是正常关机方式,是ORACLE的默认关机方式

IMMEDIATE关机方式是立即关机方式,使用这种方式关闭数据库,系统将连接到数据库的所有用户没有提交的事务全部回退,中断连接,然 后关闭数据库

NORMAL关机方式是异常关机方式,该方式关闭数据库时,系统立即关闭数据库实例

对于连接到数据库的所有数据库不作任何检查,也不作数据库完整性检查。

TRANSACTIONAL关机方式是事务终结后关闭数据库,该关机方式中,数据库必须等待所有用户的事务终结,提交回退。

shutdown 实例介绍

1、SHUTDOWN NORMAL

这是数据库关闭SHUTDOWN命令的确省选项。也就是说如果你发出SHUTDOWN这样的命令,也即是SHUTDOWN NORNAL的意思。

发出该命令后,任何新的连接都将再不允许连接到数据库。在数据库关闭之前,Oracle将等待目前连接的所有用户都从数据库中退出后才开始关闭数据库。采用这种方式关闭数据库,在下一次启动时不需要进行任何的实例恢复。但需要注意一点的是,采用这种方式,也许关闭一个数据库需要几天时间,也许更长。

2、SHUTDOWN IMMEDIATE

这是我们常用的一种关闭数据库的方式,想很快地关闭数据库,但又想让数据库干净的关闭,常采用这种方式。

当前正在被Oracle处理的SQL语句立即中断,系统中任何没有提交的事务全部回滚。如果系统中存在一个很长的未提交的事务,采用这种方式关闭数据库也需要一段时间(该事务回滚时间)。系统不等待连接到数据库的所有用户退出系统,强行回滚当前所有的活动事务,然后断开所有的连接用户。

3、SHUTDOWN TRANSACTIONAL

该选项仅在Oracle 8i后才可以使用。该命令常用来计划关闭数据库,它使当前连接到系统且正在活动的事务执行完毕,运行该命令后,任何新的连接和事务都是不允许的。在所有活动的事务完成后,数据库将和SHUTDOWN IMMEDIATE同样的方式关闭数据库。

4、SHUTDOWN ABORT

这是关闭数据库的最后一招,也是在没有任何办法关闭数据库的情况下才不得不采用的方式,一般不要采用。如果下列情况出现时可以考虑采用这种方式关闭数据库。

1、 数据库处于一种非正常工作状态,不能用shutdown normal或者shutdown immediate这样的命令关闭数据库;

2、 需要立即关闭数据库;

3、 在启动数据库实例时遇到问题;

所有正在运行的SQL语句都将立即中止。所有未提交的事务将不回滚。Oracle也不等待目前连接到数据库的用户退出系统。下一次启动数据库时需要实例恢复,因此,下一次启动可能比平时需要更多的时间。

四、监听程序

启动监听程序

lsnrctl start

关闭监听程序

lsnrctl stop

其他人在看啥

    《oracle学习笔记-数据库启动》的评论 (共 0 条)

    • Guest::like