oracle数据库启动过程,Oracle启动过程

http://www.itjxue.com  2023-01-21 21:29  来源:未知  点击次数: 

Oracle 数据库启动顺序和在各个阶段需要什么文件

数据库启动时,首先通过ORACLE_SID ,来找到的服务器参数文件(如spfileorcl11g.ora),并可以启动到nomount状态,此时实例启动;

通过服务器参数文件(包含控制文件的路径) 可以找到控制文件的位置(所有的控制文件要都可用且一致),然后就可以启动到mount状态,此时数据库被装载;

跟据控制文件里的scn号和数据文件头部的scn对比,一致,即可以启动到open状态,此时数据库打开。

安装oracle数据库后怎么启动

在命令行操作的话,在电脑左下角-》运行-》CMD

输入sqlplus "用户名/密码@数据库名 as sysdba"

进入oracle之后,就敲sql语句就行了

建议您还是在界面操作,这样的话还要安装pl/sql,连接oracle进行操作,登陆输入用户名System,口令,选择数据库名就可以登陆建表操作了。

怎样启动和关闭oracle数据库

1、由于oracle运行在Linux系统里面,第一步,我们要连接Linux系统。

2、然后我们转换到oracle安装用户里面。 我的是 oracle。

3、然后我们运行oracle的环境里的变量, 用来输入相关命令。

4、进去oracle的控制台。输入一个命令: sqlplus ?/ as sysdba。

5、如果要启动数据库,就输入命令: startup。

6、如果关闭数据库, 就输入命令: shutdown immediate。

ORACLE数据库启动与关闭的步骤

oracle的启动和关闭

一、sql*plus方式:

用sql*plus来连接到Oracle

Sqlplus /nolog 是以不连接数据库的方式启动sql*plus

Connect /as sysdba 是以DBA身份连接到oracle

or35.gif

. 启动

or36.gif

Startup就可以启动了。

不过oracle启动模式有3种:

l Startup nomount (nomount模式)启动实例不加载数据库。

l Startup mount (mount模式)启动实例加载数据库但不打开数据库

l Startup (open 模式)启动实例加载并打开数据库,就是我们上面所用的命令

Nomount模式中oracle仅为实例创建各种内存结构和服务进程,不会打开任何数据库文件,

所以说:

1) 创建新数据库

2) 重建控制文件

这2种操作都必须在这个模式下进行。

Mount模式中oracle只装载数据库但不打开数据库,所以说:

1) 重命名数据文件

2) 添加、删除和重命名重做日子文件

3) 执行数据库完全恢复操作

4) 改变数据库的归档模式

这4种操作都必须在这个模式下进行

Open模式(就是我们上面的startup不带任何参数的)正常启动。

当然这3种模式之间可以转换:

Alter database mount(nomount模式)—〉alter database open(mount 模式)—〉(open模式)

当然还有其它一些情况,在我们open模式下可以将数据库设置为非受限状态和受限状态

在受限状态下,只有DBA才能访问数据库,所以说:

1) 执行数据导入导出

2) 使用sql*loader提取外部数据

3) 需要暂时拒绝普通用户访问数据库

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

这4种操作都必须在这个状态下进行

在打开数据库时使用startup restrict命令即进入受限状态。

or37.gif

使用alter system disable restricted session命令即可以将受限状态改变为非受限状态。

or38.gif

使用alter system enable restricted session命令可以将非受限状态变为受限状态

or39.gif

使用alter database open read only可以使数据库进入只读状态。

使用alter database open read write 可以使数据库进入读写状态。

当然在某些情况下可能是用上述各种启动方式都无法成功启动数据库,这个时候就要使用startup force命令来强行启动数据库。当然谁都不想碰到这种情况:)

or40.gif

c.关闭数据库

1)正常关闭 shutdown

2) 立即关闭 shutdown immediate

3) 关闭事务 shutdown transactional

4) 强行关闭 shutdown abort,当然谁都不想碰到这种情况。

二、OEM为例

Oracle Enterprise Management(OEM),

跟第一小节讲的Sqlplus /nolog ,Connect /as sysdba 这2个命令差不多的操作如图:

or29.gif

or30.gif

or31.gif

按照上面的一步步操作就能够连接到数据库。

下面是如何启动和关闭数据库:

or32.gif

点击我们前几章创建的ORADB01这个数据库树中的配置选项,这个里面的:

1)已启动 对应 Nomount模式

2)已转载 对应 mount模式

3)打开 对应 open模式

当你点击应有按钮之后就会进入如下对话框

or33.gif

1)正常 对应 正常关闭 shutdown

2) 立即 对应 立即关闭 shutdown immediate

3) 事务处理 对应 关闭事务 shutdown transactional

4) 中止 对应 强行关闭 shutdown abort

确定之后出现如下对话框

or34.gif

限制对数据库访问 对应 alter system disable restricted session

alter system enable restricted session

只读模式 对应 alter database open read only

alter database open read write

简单吧,sql*plus的一大堆命令到OEM中变成了几个按钮罢了。

3.windows控制台

or41.gif

这个熟悉吧:

oracle ************Agent 用于OEM管理结构

oracle************HTTPSERVER oracle Web服务器

oracle ************ManagementServer 用于OEM管理结构

oracle ************ TNSListener oracle网络结构的服务器端进程

oracle ************OEMREP 资料档案库文件

oracle ************ORADB001 用户创建的数据库

我一般都把所有的服务全部选成手动启动,如果全开,内存要用掉700M.............

Oracle在正常启动过程中分别有哪三个阶段,并分别读取数据库的哪些

楼主您好

1.Oracle启动模式的nomount阶段

nomount,在这个启动阶段里,Oracle主要做的事情,就是找到相关的启动参数文件,并且打开启动参数文件,根据启动参数里记录的参数值。

启动实例,并且启动成功的话,打开告警文件alert_.ora文件,这个文件默认在ORACLE_BASE/admin/SID

/bdump下,并且记录相关的启动信息。如果在startup里指定了pfile=''的话,Oracle将从你指定的文件作为启动参数文件,如果是没有指定pfile的话,Oracle会先去默认目录($ORACLE_HOME/)下找spfileSID.ora,如果没有找到,则找

spfile.ora,如果还是没有,找initSID.ora,这个就是以前的静态参数文件了,如果没有则找init.ora;如果没有找到的话,这时候,启动就会有,找不到参数文件的错误,同时会动态注册实例名到监听服务里。

当然,在使用startup pfile=''前,我们需要先用create pfile from spfile;把实例的动态参数文件先export成静态的文本参数文件,然后根据合适的参数修改这个文件,修改好了一个在用这个pfile启动。

2.Oracle启动模式的mount阶段

当达到了nomount阶段以后,数据库就只能一步一步的来进行启动了,他的下一个启动的阶段,就是mount。我们通过alter

database mount;来从nomount阶段或者通过startup

mount来到达这个阶段,到达这个阶段,Oracle从启动参数文件里找到控制文件的路径参数值,找到所有的控制文件,然后打开读取控制文件的信息,控制文件里记录了各种表空间文件,日志文件的信息,以及数据库的字符集,其实就是控制文件里的记录(控制文件是可以指定多个的,只要有个一个不能成功读取,这个阶段将会失败),这时,数据库已经读取了相关系统文件的信息,也读取了字符集信息,但是仅仅只是读取,这些系统文件,并没有真正的加载到数据库里。

曾经有人启动到mount的时候,出现问题,最后一看原来是control文件这里已经被删除掉了,解决的办法,就是从备份的控制文件来一个过来,然后做恢复就可以了。如果没有备份,在nomount下,新建一个controlfile,就可以了。

3.Oracle启动模式的open阶段

mount阶段结束后,数据库体系的所有信息已经读取全了,我们知道了redo文件,数据文件的信息,但是还没有加载,到open状态,数据库读取所有的文件,如果有一个文件不能成功读取,open阶段就会失败。这时候,我们能够解决的就是通过错误的提示,进行数据恢复,或者错误排查。

这一个阶段的错误的各种原因最多,处理起来的方式也相对于前面的要复杂的多,不过基本上都是和数据文件,日志文件缺失,数据scn不一致,等等有关,这时我们需要做的就是根据错误的提示来进行相应的数据恢复,和数据排查,这块是数据库恢复最有趣的地方。

SMON是系统监视器(System

Monitor)的缩写。如果Oracle实例失败,则在SGA中的任何没有写到磁盘中的数据都会丢失。有许多情况可能引起Oracle实例失败,例如,操作系统的崩溃就会引起Oracle实例的失败。当实例失败之后,如果重新打开该数据库,则背景进程SMON自动执行实例的复原操作。

DBWR是数据库书写器(Database

Write)的缩写.该服务器进程在缓冲存储区中记录所有的变化和数据,DBWR把来自数据库的缓冲存储区中的脏数据写到数据文件中,以便确保数据库缓冲存储区中有足够的空闲的缓冲存储区。脏数据就是正在使用但是没有写到数据文件中的数据。

LGWR是日志书写器(Log Write)的缩写。LGWR负责把重做日志缓冲存储区中的数据写入到重做日志文件中。

CKPT进程是检查点(Checkpoint)的缩写。该进程可以用来同步化数据库的文件,它可以把日志中的文件写入到数据库中。

PMON是进程监视器(Process Monitor)的缩写。当取消当前的事务,或释放进程占用的锁以及释放其它资源之后,PMON进程清空那些失败的进程。

oracle启动命令

启动的阶段和启动的命令如下:

1、nomount:alter database open,此阶段需要参数文件支持;

2、mount:alter database mount,此阶段需要控制文件支持;

3、open :alter database open,此阶段数据库会验证所有的数据文件和redo。

4、也可以一条命令直接起库:startup

具体方法/步骤:

打开命令行窗口界面,可以同时按住“ctrl+R”键,在弹出来的运行窗口中输入cmd。

启动oracle服务,在命令行窗口中输入“net start oracleserviceXXXX”后面的XXXX实际是需要根据您自己的数据库实例名进行替换。如果您不知道,可以看下“计算机管理”界面下的服务中,能不能找到服务名类似的服务。提示“服务已经启动成功”就说明服务启动起来了。

启动监听程序,在命令行窗口输入lsnrctl start,等到提示“命令执行成功”就可以了。

接下来就开始加载数据库实例了。在命令行窗口输入“sqlplus / as sysdba”登录到一个空闲的例程。

登录完成后,输入“startup”。这个过程可能有点慢,直到出现“数据库已经打开”则表示实例启动成功了。

测试一下把,随便连接一个数据库用户,如果提示“连接成功”则说明数据库服务现在可以正常使用了。

(责任编辑:IT教学网)

更多

推荐照片处理文章