shutdown 命令
SHUTDOWN有四个参数:NORMAL、TRANSACTIONAL、IMMEDIATE、ABORT。缺省不带任何参数时表示是NORMAL。
SHUTDOWN NORMAL:
不允许新的连接、等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN TRANSACTIONAL:
不允许新的连接、不等待会话结束、等待事务结束、做一个检查点并关闭数据文件。启动时不需要实例恢复。
SHUTDOWN IMMEDIATE:
不允许新的连接、不等待会话结束、不等待事务结束、做一个检查点并关闭数据文件。没有结束的事务是自动rollback的。启动时不需要实例恢复。
SHUTDOWN ABORT:
不允许新的连接、不等待会话结束、不等待事务结束、不做检查点且没有关闭数据文件。启动时自动进行实例恢复。
启动过程
Oracle的启动过程共经历四个阶段:
shutdown→nomount→mount→open
shutdown→nomount过程:
读初始参数文件
分配物理内存
启动后台进程
定位到控制文件
打开/写alert文件
nomount过程可以访问的动态性能视图:v$parameter,v$sga,v$option,v$process,v$version,v$instance
nomount→mount过程:
打开控制文件
确认 database的结构信息
mount过程可以访问的动态性能视图: v$thread,v$controlfile,v$database,v$datafile,v$datafile_header,v$logfile
以下任务必须在mount状态下进行:
命名数据文件
启用和禁用重作日志归档选项
执行完全数据库恢复
mount→open过程:
打开数据文件
打开重做日志文件
最后阶段中,oracle服务器验证所有数据文件和重做日志文件是否可以打开,并检查数据库的一致性,如果需要,smon进程会启动例程恢复
启动过程:
NOMOUNT 实例启动阶段
数据库操作:
读取参数文件
根据参数设置分配空间
启动后台进程
打开报警文件,记录启动过程
用户操作:
创建数据库:创建文件
重建控制文件
MOUNT 数据库装载阶段
数据库操作:
读取控制文件:得到数据库信息
将数据库和实例关联在一起
用户操作:
操作数据库的归档和非归档模式
修改控制文件,重做数据文件的名称和路径
数据库的备份和恢复
改变归档模式
OPEN 打开数据库
数据库操作:
读取文件的SCN号,判断数据一致性,是否打开或回滚。
检查数据文件状态
用户操作:
查看数据
....
普通身份的用户是不能在 OPEN 之前登陆的。
SYSDBA是通过口令文件和操作系统验证,可以在OPEN之前登陆。
注意:在NOMOUNT启动模式下,只能访问那些与SGA区相关的数据字典视图,包括V$PARAMETER、V$SGA、V$OPTION、V$PROCESS、V$SESSION、V$VERSION、V$INSTANCE等,这些视图中的信息都是从SGA区中获得的,与数据库无关。在MOUNT启动模式下,只能访问那些与控制文件相关的数据字典视图,包括V$THREAD、V$CONTROLFILE、V$DATABASE、V$DATAFILE、V$LOGFILE等,这些视图中的信息都是从控制文件获得的。
STARTUP PFILE= filename:以filename为初始化文件启动数据库,不是采用缺省初始化文件。
STARTUP FORCE:中止当前数据库的运行,并开始重新正常的启动数据库。
STARTUP RESTRICT:只允许具有RESTRICTED SESSION权限的用户访问数据库。
STARTUP RECOVER:数据库启动,并开始介质恢复。
分享到:
相关推荐
### Oracle启动过程、Shutdown与Startup参数详解 #### 一、Oracle数据库关闭命令(SHUTDOWN) 在Oracle数据库管理中,正确地使用关闭命令至关重要。以下是几种常见的关闭方式: 1. **NORMAL**:正常关闭模式,...
选择正确的启动和关闭方式对于保持Oracle数据库的健康和性能至关重要。理解每种模式的含义和适用场景,能够帮助数据库管理员更加有效地管理数据库资源,确保数据的完整性和系统的稳定性。在执行任何操作前,建议备份...
在进行Oracle数据库管理操作时,用户遇到一种常见的情况:当使用`shutdown immediate`命令关闭数据库后,再次尝试使用`startup mount`启动数据库时,遇到了“监听程序当前无法识别连接描述符中请求的服务”的错误...
Oracle数据库的启动(startup)和关闭(shutdown)是数据库管理员日常运维的重要环节。本文将详细介绍Oracle数据库的不同启动和关闭方式,以及相关注意事项。 首先,启动和关闭数据库必须以具有Oracle管理员权限的...
这一步可以避免打开数据文件,从而有助于诊断和修复潜在的问题。 - 在mount状态下,可以执行一些管理任务,比如恢复控制文件或离线数据文件等。 4. **处理数据文件问题**: - 在mount状态下,如果遇到类似ORA-...
碎片处理工具,处理碎片至使oracle数据库不能启动, 解决方法: 进入dos: 以DBA用户登录,具体命令是 sqlplus /NOLOG SQL>connect sys/change_on_install as sysdba 提示:已成功 SQL>shutdown normal 提示:...
### ora-01033: Oracle Initialization or Shutdown in Progress 解决方法 #### 一、问题背景及原因 **标题**: “ora-01033: Oracle initialization or shutdown in progress 解决方法” **描述**: “ora-01033: ...
Oracle Initialization or Shutdown in Progress 解决方法 Oracle Initialization or Shutdown in Progress 是 Oracle 中一个常见的问题,即 Oracle 初始化或关闭过程中无法连接数据库的问题。今天,我们将详细介绍...
除此之外,Oracle的`SHUTDOWN`命令也有多种模式,如`NORMAL`、`TRANSACTIONAL`、`IMMEDIATE`和`ABORT`,它们分别对应不同的关闭策略,影响数据库关闭的速度和重启时是否需要实例恢复。 理解并熟练掌握这些启动和...
Linux 下 Oracle 启动和监听 Oracle 数据库是重量级的,其管理非常复杂,将其在 Linux 平台上的启动和关闭步骤整理如下: 一、安装和配置 Oracle 在 Linux 平台上安装 Oracle 之后,需要创建 Oracle 系统用户,并...
Oracle数据库的启动过程分为三个主要阶段:Shutdown、NOMOUNT、MOUNT和OPEN。首先,Shutdown是关闭数据库的过程,根据关闭类型(Normal、Immediate、Transactional、Abort),数据库将以不同的方式停止服务。Normal...
Oracle 数据库的启停 Oracle 数据库的启停是数据库管理员的重要任务...通过以上的讲解,我们可以了解到 Oracle 数据库的启停过程,了解到不同的启动和停止命令的使用场景和区别,从而更好地管理和维护 Oracle 数据库。
"Linux下启动Oracle服务和监听程序" Linux下启动Oracle服务和监听程序是Oracle数据库管理员的基本操作之一。本文将详细介绍Linux平台上启动和关闭Oracle服务和监听程序的步骤,并对启动和关闭参数进行解释。 启动...
Oracle 数据库启动和关闭的理解是每个数据库管理员必备的基础知识。Oracle 提供了多种启动和关闭数据库的方法,以适应不同情况和需求。以下是关于这个主题的详细解析: 首先,Oracle 数据库启动过程通常涉及三个...
通过这项配置,可以在服务器重启后自动启动Oracle实例和服务,确保应用程序和服务的连续可用性。本文将详细介绍如何在Centos 7.4上实现这一功能。 #### 二、准备工作 在开始之前,请确保已经完成了以下准备工作: 1...
Oracle 数据库有多种启动和关闭方式,包括: 1. startup nomount:非安装启动,仅需要init.ora 文件。 2. startup mount dbname:安装启动,数据库日志归档、数据库恢复、重新命名一些数据库文件。 3. startup open...
一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b、关闭...
在Oracle中,如果你遇到“ORA-01090: shutdown in progress - connection is not permitted”和“ORA-01081: cannot start already-running ORACLE - shut it down first”的错误,这通常意味着数据库实例正在运行,...
ExecStop=/usr/local/oracle/db_home/bin/shutdown.sh PIDFile=/var/run/oracle_db.pid Restart=on-failure PrivateTmp=true [Install] WantedBy=multi-user.target ``` 在这个示例中,`ExecStart` 和 `ExecStop` ...