看oracle入门书,其中一句话说,使用startupnomount命令启动例程,不可以和mountopen和exclusive一起使用,这个命令适用于建立数据库或是维护数据库时使用。
于是查了一下,为什么不能同时使用,以及他们之间的区别。
以下为转载:
nomount:读初始化参数文件,启动实例。
mount:打开控制文件
open:打开数据文件,日志文件
简单来说,nomount是用来创建数据库的状态,在此情况下可以执行createdatabase....
mount是用来维护数据库的,比如数据库出现了问题,数据文件被误删除,就无法open,这时可在mount状态下将数据文件从数据库中去除。
open是数据库可以对全体用户提供服务了。
详细介绍:
1、startupnomount
非安装启动,这种方式启动下可执行:重建控制文件、重建数据库
读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。
2、startupmountdbname
安装启动,这种方式启动下可执行:
数据库日志归档、
数据库介质恢复、
使数据文件联机或脱机,
重新定位数据文件、重做日志文件。
执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置,
但此时不对数据文件和日志文件进行校验检查。
3、startupopendbname
先执行“nomount”,然后执行“mount”,再打开包括Redolog文件在内的所有数据库文件,
这种方式下可访问数据库中的数据。
4、startup,等于以下三个命令
startupnomount
alterdatabasemount
alterdatabaseopen
数据库启动的三个台阶nomount,mount,open目的是明白细化启动数据库的三个步骤
启动数据库到nomount状态的条件如下。如果你是非windowsOS就没有注册表,而有环境变量服务中的OracleService必须启动
服务的名称和注册表中的oracle_sid相匹配
存在正确的密码文件和参数文件
有足够的内存
参数文件中描述的路径必须存在
数据库产品安装正确
connsys/oracleassysdba
shtudownabort;
startupnomount;
selectinstance_name,statusfromv$instance;
启动数据库到第一个台阶nomount状态做了如下的工作
1.读参数文件
2.分配内存
3.启动后台进程
4.初始化部分v$视图
将数据库带到mount状态
selectvaluefromv$spparameterwherename='control_files';
alterdatabasemount;
mount数据库的过程是读参数文件中描述的控制文件,校验控制文件的正确性,将控制文件的内容读入到内存中,mounu是挂接的意思,是操作系统中的概念。一旦mount之后,就是将一个没有意义的实例和一个数据库发生了联系。因为实例是空壳。没有任何数据库和该实例发生关系,我们可以理解为实例是水泵,放到哪个水塘里就会抽取哪里的数据,实例是通用的。mount的意思是将一个通用的水泵放入到一个指定的水塘。mount是读控制文件,控制文件中有数据文件和日志文件的信息。
selectinstance_name,statusfromv$instance;
打开数据库
alterdatabaseopen;
读控制文件中描述的数据文件
验证文件的一致性,如果不一致,使用日志文件将数据库文件恢复到一致的状态。
数据库open后,普通用户才可以访问数据库
用户的表才为可见
只读方式open数据库
startupmount;
alterdatabaseopenreadonly;
selectopen_modefromv$database;
默认的open方式为readwrite
想改readonly为readwrite必须重新启动数据库
我们现在回想一下数据库启动的三个台阶,我们先读的是参数文件,参数文件可以由我们来编写。读完参数文件后又读了控制文件,控制文件中描述了数据文件和日志文件的信息,如果控制文件丢失了我们可以重新建立,最后是读数据文件。数据文件里才存放了我们的数据。数据库将启动分为三个台阶,目的是我们可以准确的知道哪里有问题,迅速排除。有点象老拖木钎,大头的在后面。由最开始的一个1K的参数文件,最后到几个T的大型数据库。当我们只打startup而不加任何参数的时候,默认是到open,等于startupopen;
我们从屏幕显示的结果可以清楚的看出,有三个台阶。
还有一个命令是startupforce强制启动数据库,等于强制停止数据库再启动数据库。
转自:http://hi.baidu.com/mecss/item/1fb3c949299a7392823ae125
分享到:
相关推荐
默认情况下,如果不指定任何选项,`STARTUP`命令将执行`STARTUP MOUNT`之后再自动执行`ALTER DATABASE OPEN`,即打开所有数据文件和日志文件,使数据库进入正常工作状态。 命令示例:`SQL> startup` **4. 特殊启动...
STARTUP 命令有三种方式:STARTUP NOMOUNT、STARTUP MOUNT、STARTUP。 1. STARTUP NOMOUNT STARTUP NOMOUNT 命令仅仅启动一个 Oracle 实例,没有完成数据库的启动。因此采用这种方式的话,后续想要完整的启动...
1. **创建Oracle实例**:通过STARTUP NOMOUNT命令,这一步骤仅创建实例,不加载数据库。它读取初始化参数文件(init.ora,或者在新版本中是spfile),启动后台进程,并初始化系统全局区(SGA)。 2. **安装数据库**...
4. `startup`:等于以下三个命令:`startup nomount`, `alter database mount`, `alter database open` 5. `startup restrict`:约束方式启动 6. `startup force`:强制启动方式 7. `startup pfile=参数文件名`:带...
### Oracle启动过程、Shutdown与Startup参数详解 #### 一、Oracle数据库关闭命令(SHUTDOWN) 在Oracle数据库管理中,正确地使用关闭命令至关重要。以下是几种常见的关闭方式: 1. **NORMAL**:正常关闭模式,...
在启动数据库时,可以使用不同的命令,例如 STARTUP NOMOUNT、STARTUP MOUNT 和 STARTUP OPEN 等,每个命令对应不同的启动阶段。 在数据库维护操作中,STARTUP MOUNT 命令经常被使用,以便执行数据库维护操作,例如...
4. startup:等于以下三个命令startup nomount alter database mount alter database open 5. startup restrict:约束方式启动,仅允许具有一定特权的用户访问。 6. startup force:强制启动方式,用于关闭数据库时...
如果使用STARTUP NOMOUNT或MOUNT启动数据库,后续还需要使用ALTER DATABASE命令来完成数据库的安装和打开。例如,STARTUP NOMOUNT后需执行ALTER DATABASE MOUNT和ALTER DATABASE OPEN;STARTUP MOUNT后只需执行ALTER...
4. Startup:等于以下三个命令:startup nomount、alter database mount、alter database open。 5. Startup restrict:约束方式启动,能够启动数据库,但只允许具有一定特权的用户访问非特权用户访问时,会出现以下...
1. **STARTUP NOMOUNT**:这个参数用于不装入数据库的情况下启动Oracle实例。通常在数据库刚刚创建或者需要进行初始化设置时使用。在这种模式下,只能执行一些基本的数据库配置操作,比如修改控制文件或初始化参数...
4. startup:等于执行以下三个命令:startup nomount、alter database mount、alter database open。 5. startup restrict:约束方式启动,仅允许具有特权的用户访问数据库。 6. startup force:强制启动方式,当不...
数据库的启动过程可以分为三个阶段:STARTUP NOMOUNT、STARTUP MOUNT 和 STARTUP OPEN。在 STARTUP NOMOUNT 阶段,数据库实例启动;在 STARTUP MOUNT 阶段,数据库装载;在 STARTUP OPEN 阶段,数据库打开。 性能...
3. **ALTER DATABASE命令**:在STARTUP NOMOUNT或STARTUP MOUNT之后,可以使用ALTER DATABASE MOUNT或OPEN命令分别完成安装和打开数据库的过程。 理解这些启动和关闭方式的差异对于Oracle DBA来说至关重要,因为...
- **startup**(无参数):等同于nomount、mount、open三个步骤。 - **startup restrict**:限制访问,只有特定权限的用户可以访问。 - **startup force**:在无法正常关闭数据库时使用,先关闭再启动。 - **...
4. `startup`:默认启动,等同于`startup nomount`、`alter database mount`、`alter database open`的组合。 5. `startup restrict`:限制启动,仅允许特定用户访问。 6. `startup force`:强制启动,用于在无法...
4. startup 等于以下三个命令:startup nomount、alter database mount、alter database open 5. startup restrict 约束方式启动 这种方式能够启动数据库,但只允许具有一定特权的用户访问非特权用户访问时,会...
4. startup:等于以下三个命令:startup nomount、alter database mount、alter database open。 5. startup restrict:约束方式启动,启动数据库,但只允许具有特权的用户访问。 6. startup force:强制启动方式,...
4. startup:等于以下三个命令:startup nomount、alter database mount、alter database open。 5. startup restrict:约束方式启动这种方式能够启动数据库,但只允许具有一定特权的用户访问非特权用户访问时,会...