一、概述:

Oracle数据库的启动分为启动数据库实例、装载数据库和打开数据库3个过程,对应数据库的3种模式。

启动数据库实例:根据数据库初始化参数文件中参数设置,在内存中为数据库分配SGA、PGA等内存结构,在内存中为数据库分配SGA、PGA等内存结构,同时启动数据库的后台进程。在

此阶段不检查数据库(物理文件)是否存在。

装载数据库:根据初始化参数文件中的control_files参数的设置,将数据库的控制文件调入内存并打开,从中获取数据库所有数据库文件盒重做日志文件的位置、名称、

状态灯数据库结构信息,为打开数据库做准备。

打开数据库:根据控制文件中的信息,将数据库中所有处于联机状态的数据文件、重做日志文件调入内存中并打开。

数据库关闭的过程与数据库启动的过程是相反的

二、启动Oracle

1.启动数据库前的准备

(1)启动监听服务与数据库服务

在启动数据库之前应该先启动数据库服务器的监听服务以及数据库服务。如果监听服务没有启动,那么客户端无法连接到数据库服务器:如果数据库服务没启动,那么客户端就无法连接到数据库。

在windows下

启动监听服务:lsntctl start

打开数据库服务:Oracle orcl

(2)启动SQL*plus

设置环境变量oracle_sid

启动sql*plus

以sysdba登入

oracle 数据库启动模式数据库,对应数据库启动的第二个过程

open        启动实例、装载并打开数据库

open recover 启动数据库实例进行完全介质恢复操作

force        当数据库启动或关闭过程中出现故障时强制重启数据库

restrict      只有具有restrict session权限的用户可以连接到数据库

(1)startup nomount :根据数据库初始化参数文件中参数设置,在内存中为数据库分配SGA、PGA等内存结构,在内存中为数据库分配SGA、PGA等内存结构,同时启动数据库的后台进程

如果DBA要执行以下的操作,必须将数据库启动到nomount模式下进行

创建一个新的数据库

重建数据库的控制文件

(2)startup mount:根据初始化参数文件中的control_files参数找到数据库的控制文件,读取控制文件获取数据库的物理结构信息,包括数据库文件、重做日志文件等,实现数据库的装载。

如果DBA要执行以下的操作,必须将数据库启动到mount模式下进行

改变数据库的归档模式

执行数据库完全恢复操作

(3)startup open

(4)startup open recover:如果数据库处于归档模式,需要进行完全的介质恢复,可以采用这种启动模式。

(5)startup force:

(6 )start restrict:只有具有restrict session权限的用户可以连接到数据库

通常要执行下列操作时,可以采用startup restrict方式启动数据库

执行数据的导出或导入操作

执行数据装载操作

暂时阻止普通用户连接数据库

进行数据库移植或升级操作

改变数据库的状态

1.改变数据库的启动模式:

alter database open

2.数据库读写状态转换

alter database open read write;

3.数据库的受限与非受限状态转换

alter system enable restricted session;

alter system disable restricted session;

关闭数据库:

1.正常关闭数据库

shutdown normal;

oracle会执行以下操作

阻止任何用户建立新的数据库连接

等待当前所有正在连接数据库的用户主动断开连接

一旦所有用户断开连接,则关闭数据库

数据库下次启动时不需要恢复实例

2.事务关闭数据

shutdown transaction;

组织所有用户建立新的数据库连接,也不允许当前连接用户启动任何新的事务

等待用户回滚或提交任何当前未提交的事务,然后立即断开用户连接

所有用户连接都被断开后,关闭数据库

数据库下一次启动时不需要实例恢复

3.立即关闭数据库

shutdown immediate;

组织所有用户建立新的数据库连接,也不允许当前连接用户启动任何新的事务

回滚数据库中所有当前未提交的事务

终止当前数据库的所有的用户连接,直接关闭数据库

数据库下一次启动时不需要实例恢复

数据库的静默与挂起

1.数据库静默的概念

数据库静默只允许dba用户在数据库中执行查询、更新等事务操作,以及运行pl/sql程序,而其他用户都不能在数据库中执行任何操作。

2.进入静默状态: alter system quiesce restricted;

3.退出静默状态:alter system unquiesce;

数据库的挂起

Oracle数据库还有一个特殊的状态,称为挂起状态。当数据库处于挂起状态时,对数据库的数据文件和控制文件的I/O操作都被暂停。这样就可以保证在没有I/O冲突的状态下进行数据的备份操作。当数据库进入挂起挂起状态时,当前所有的

I/O操作可以继续完成,但是新的操作不会被执行,而是被放到等待队列中。只是暂时停止所有用户的I/O操作。

1.进入挂起状态

alter system suspend;

2.退出挂起状态

alter system resume;

Oracle数据库的启动与关闭的更多相关文章

  1. Oracle数据库的启动和关闭

    深刻理解Oracle数据库的启动和关闭 Oracle数据库提供了几种不同的数据库启动和关闭方式,本文将详细介绍这些启动和关闭方式之间的区别以及它们各自不同的功能. 一.启动和关闭Oracle数据库 对 ...

  2. 深刻理解Oracle数据库的启动和关闭 .

    Oracle数据库提供了几种不同的数据库启动和关闭方式,本文将详细介绍这些启动和关闭方式之间的区别以及它们各自不同的功能. 一.启动和关闭Oracle数据库 对于大多数Oracle DBA来说,启动和 ...

  3. Oracle数据库的启动和关闭实例

    在开始了解oracle数据库的命令之前,先来看一个东西:SQL*PLUS(sqlplus) Oracle的sql*plus是与oracle进行交互的客户端工具.在sql*plus中,可以运行sql*p ...

  4. oracle数据库实例启动与关闭

    区分数据库与实例:实例是指各种内存结构和服务进程,数据库是指基于磁盘存储的数据文件.控制文件.参数文件.日志文件和归档日志文件组成的物里文件集合. 数据库实例启动: startup [nomount ...

  5. oracle数据库的启动、关闭、连接

    登陆数据库 方法一: $ sqlplus / as sysdba [oracle@dev /]$ sqlplus / as sysdba SQL*Plus: Release Production on ...

  6. Linux——oracle数据库实例启动关闭(转)

    -->Oracle 数据库实例启动关闭过程 --================================ [root@robinson ~]# su - oracle --查看未启动实例 ...

  7. Oracle日常运维操作总结-数据库的启动和关闭

    下面是工作中对Oracle日常管理操作的一些总结,都是一些基本的oracle操作和SQL语句写法,在此梳理成手册,希望能帮助到初学者(如有梳理不准确之处,希望指出). 一.数据库的启动和关闭 1.1 ...

  8. Oracle常用命令13(数据库的启动、关闭)

    数据库的启动.关闭 数据库的启动:安装启动.非安装启动.共享启动.独占启动.约束启动.强制启动 --不登陆的方式进入 Sqlplus /nolog 安装启动: Startup {pfile=<f ...

  9. Oracle数据库的启动与停止

    oracle linux下开启与关闭 .启动ORACLE监听 首先要登录用户oracle:su - oracle oracle@localhost bin]$ lsnrctl --启动oracle监听 ...

随机推荐

  1. ios 应用多语言自由切换实现

    第一次进入应用获取本机语言.1.假设本机语言在软件实现语言列表里.则默认选中本机语言,可是用户还是能够选择其他语言.2.假设本机语言不在软件实现语言列表里,则默认选中英语.用户还是能够选择其他语言. ...

  2. Spring MVC表单提交中文数据出现乱码

    http://jiessiedyh.iteye.com/blog/475541 http://bigcat.easymorse.com/?p=474 Spring MVC 教程,快速入门,深入分析 h ...

  3. Fragment嵌套Fragment实现的Tab导航

    要实现的效果就是底部导航,具体到每一个Fragment又在上部设置一个导航条,分成两个Fragment实现.效果图是: 首先给出activity的layout: <android.support ...

  4. libsvm easy.py ValueError: need more than 0 values to unpack windows下终极解决

    现象是: python easy.py train test 输出: Scaling training data...WARNING: original #nonzeros 100389 new #n ...

  5. Android-ViewPagerIndicator框架使用——TabPageIndicator

    前言:TabPageIndicator这个类和之前的不大一样,他不仅提供了展示的功能,而且可以点击,下面的viewpager可以跳转的有点tabhost的感觉. 一:布局文件的定义,simple_ta ...

  6. eclipse 解决编译出现GBK或UTF8 编码错误的方法

    eclipse由于开源所以支持了比较杂的编码方式,而这些一个工程导入时添加了不少的外来程序,由于不是同一工程一次编码带来了其中含有GBK和 UTF8   UTF16  ASCII等文件编译时就会出现错 ...

  7. iOS-毛玻璃、navigationBar滑动颜色渐变

    1.毛玻璃实现 iOS8以上,官方提供了系统方法实现毛玻璃,代码如下: // iOS8 UIVisualEffectView UIImageView *bgView = [[UIImageView a ...

  8. 如何在shell中处理异常(转)

    似乎好像大概有句话是这么说得,好程序与坏程序之间的区别就在于它的鲁棒性,也就是在异常情况下该程序是否还是在可hold住状态,能否不死,不崩溃,或者不做出一些超出预期的事情.那要做好这些,自然而然就要学 ...

  9. windows下 兼容Python2和Python3

    windows下同时安装了python2和python3时,都可以配置环境变量,如果在命令行里输入python命令,windows会去环境变量里寻找Python的安装位置,如果先找到pytoon2的, ...

  10. 【BZOJ4898】[Apio2017]商旅 分数规划+SPFA

    [BZOJ4898][Apio2017]商旅 Description 在广阔的澳大利亚内陆地区长途跋涉后,你孤身一人带着一个背包来到了科巴.你被这个城市发达而美丽的市场所深深吸引,决定定居于此,做一个 ...