`
yyangbb
  • 浏览: 35965 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle的启动过程

阅读更多

oracle的启动过程共经历四个阶段:

  shutdown→nomount→mount→open

  

1.shutdown→nomount过程:

  读初始参数文件

  分配物理内存

  启动后台进程

  定位到控制文件

  打开/写alert文件

  nomount过程可以访问的动态性能视图:v$parameter,v$sga,v$option,v$process,v$version,v$instance

  

2.nomount→mount过程:

  打开控制文件

  确认 database的结构信息

  mount过程可以访问的动态性能视图: v$thread,v$controlfile,v$database,v$datafile,v$datafile_header,v$logfile

  以下任务必须在mount状态下进行:

  命名数据文件

  启用和禁用重作日志归档选项

  执行完全数据库恢复

  

3.mount→open过程:

  打开数据文件

  打开重做日志文件

  最后阶段中,oracle服务器验证所有数据文件和重做日志文件是否可以打开,并检查数据库的一致性,如果需要,smon进程会启动例程恢复。

  自上而下:

  shutdown:

  nomount:读取初始化参数,并且分配物理内存,通过初始化参数定位到control file,后台进程启动,写alter文件,如果alter文件不存在将创建它

  SQL> startup nomount

  ORACLE 例程已经启动。

  Total System Global Area 167772160 bytes

  Fixed Size                  1247900 bytes

  Variable Size              83887460 bytes

  Database Buffers           79691776 bytes

  Redo Buffers                2945024 bytes

 

   在nomount状态:

  可以访问到实例

  SQL> select * from v$instance;

  INSTANCE_NUMBER              INSTANCE_NAME         HOST_NAME

  --------------- -------------------------------- -------------------------------

  1                      orcl                 ORACLE10G

  可以访问到后台进程

  select * from v$bgprocess;

  可以访问到内存结构

  SQL> select * from v$sga;

  NAME                                          VALUE

  ---------------------------------------- ----------

  Fixed Size                                  1247900

  Variable Size                              83887460

  Database Buffers                           79691776

  Redo Buffers                                2945024

  但不可以访问database结构

  SQL> select * from v$database;

  select * from v$database

  *

  第 1 行出现错误:

  ORA-01507: ??????

  mount:读并打开控制文件,并确认到database的结构信息

  SQL> alter database mount

  2 /

  数据库已更改。

  SQL> select * from v$database;

  DBID NAME      CREATED        RESETLOGS_CHANGE# RESETLOGS_TIME PRIOR_RESETLOGS_CHANGE# PRIOR_RESE

  ---------- --------- -------------- ----------------- --------------

  1170053590 ORCL      25-12? -07                534907 25-12? -07                           1 30-8? -05     ARCHIVELOG

  可以找到有什么样的表空间

  SQL> select * from v$tablespace;

  TS# NAME                           INC BIG FLA ENC

  ---------- ------------------------------ --- --- --- ---

  0 SYSTEM                         YES NO YES

  1 UNDOTBS1                       YES NO YES

  2 SYSAUX                         YES NO YES

  4 USERS                          YES NO YES

  3 TEMP                           NO NO YES

  6 EXAMPLE                        YES NO YES

  已选择6行。

  有什么样的数据文件组成:

  SQL> select * from v$datafile

  2 /

  FILE# CREATION_CHANGE# CREATION_TIME         TS#     RFILE# STATUS ENABLED    CHECKPOINT_CHANGE# CHECK

  ------- ---------------- -------------- ---------- ---------- ------- ---------- ----------------

  1                9 30-8? -05              0          1 SYSTEM READ WRITE             777989 28-12? -07

  2           532340 30-8? -05              1          2 ONLINE READ WRITE             777989 28-12? -07

  3             6100 30-8? -05              2          3 ONLINE READ WRITE             777989 28-12? -07

  4             9769 30-8? -05              4          4 ONLINE READ WRITE             777989 28-12? -07

  5           559801 25-12? -07              6          5 ONLINE READ WRITE             777989 28-12? -07

  有什么样的日志文件组成:

  SQL> select * from v$logfile;

  行将被截断

  GROUP# STATUS TYPE    MEMBER

  ---------- ------- ------- ----------------------------------------------------------

  3         ONLINE E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG

  2         ONLINE E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG

  1         ONLINE E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG

  在这个状态用户表还不能打开

  open:所有文件被打开,并确认database状态

  SQL> alter database open;

  数据库已更改。

分享到:
评论

相关推荐

    oracle 启动过程详解

    Oracle 启动过程详解 Oracle 启动过程是 Oracle 数据库的核心组件之一,对于初识 Oracle 的人来说,了解 Oracle 启动过程非常重要。本文将详细解释 Oracle 启动过程的三个步骤:启动数据库到 Nomount 状态、启动...

    oracle 启动过程

    ### Oracle启动过程详解 Oracle数据库的启动过程是一个关键的系统管理任务,涉及到多个步骤和复杂的内部机制。在本文中,我们将深入探讨Oracle数据库从启动到完全可用的状态转换过程,包括在每个阶段读取的文件以及...

    ORACLE 启动过程、shutdown 和 startup 参数说明

    ### Oracle启动过程、Shutdown与Startup参数详解 #### 一、Oracle数据库关闭命令(SHUTDOWN) 在Oracle数据库管理中,正确地使用关闭命令至关重要。以下是几种常见的关闭方式: 1. **NORMAL**:正常关闭模式,...

    oracle启动过程.docx

    Oracle数据库的启动过程是一个复杂而有序的序列,它涉及到多个步骤和组件的协同工作。首先,我们要明白Oracle数据库由两大部分组成:Instance(实例)和Database(数据库)。Instance是运行在服务器上的内存结构和...

    Oracle启动管理命令

    1. **Oracle启动过程** Oracle数据库的启动通常分为三个阶段:装载(Mount)、打开(Open)和恢复(Restore)。在Windows环境中,可以通过SQL*Plus或者使用操作系统级别的脚本来进行操作。 - **SQL*Plus启动**:...

    Oracle数据库启动过程研究与实践.pdf

    Oracle启动过程中可能遇到的异常包括但不限于:参数文件丢失、控制文件读取错误、口令文件错误、数据文件或日志文件损坏或不一致等。这些异常会导致启动过程中的不同阶段失败。 当遇到启动实例失败时,最常见的原因...

    Oracle 启动与关闭

    Oracle 启动过程有三步:启动实例;mount DB;打开 DB。启动实例时,需要读取参数文件 init.ora,决定如何初始化该实例,然后根据参数文件中提供的 SGA 大小,来为 SGA 分配存贮空间,接着启动后台进程,并打开后台...

    oracle启动

    #### 四、Oracle启动过程中的注意事项 1. **参数文件**:在启动数据库前,应确保参数文件(如`spfile`)正确配置,包括内存分配、进程数量等。 2. **控制文件**:控制文件对于数据库的启动至关重要,它包含了数据库...

    Solaris重启后Oracle的启动过程

    以下是对 Solaris 重启后 Oracle 数据库启动过程的详细解释,以及如何通过批处理脚本来简化这个过程。 首先,Oracle 数据库通常不会随着 Solaris 系统的重启而自动启动,因此需要手动干预。在 Solaris 5.10 上,...

    oracle启动的三个阶段

    Oracle数据库的启动过程包含了三个关键阶段,分别是启动到nomount状态、启动到mount状态以及启动到open状态。每个阶段都有其特定的任务和目的,确保数据库能够正确、安全地运行。 1. 启动到nomount状态: 在这个...

    oracle启动项配置快捷

    ### Oracle启动项配置详解 #### 一、Oracle启动项配置概览 在Oracle数据库管理过程中,启动项配置是一项重要的操作,它直接关系到数据库服务能否正常启动与运行。本篇文章将围绕“Oracle启动项配置快捷”这一主题...

    oracle启动脚本

    - **Oracle启动脚本**:指的是用于启动Oracle数据库服务的一系列自动化命令集合。这种脚本通常被设计成能够自动完成启动过程中的各项任务,从而简化操作流程。 #### 描述解析 - **Oracle 10g启动脚本**:此处指的是...

    oracle 事务 回滚 存储过程

    在Oracle数据库中,事务的开始通常通过`BEGIN TRANSACTION`语句(或默认的隐式事务开始)启动,而结束则通过`COMMIT`或`ROLLBACK`语句完成。 ### Oracle存储过程 存储过程是在数据库中预编译的一组SQL语句,用于...

    Oracle服务启动的步骤

    Oracle服务的启动过程是数据库管理员日常运维中的重要环节,它涉及到服务器环境的配置、权限管理以及数据库服务的正确运行。以下是对标题和描述中提到的Oracle服务启动步骤的详细解释: 1. **用telnet以root...

    Oracle 自动启动脚本

    一、Oracle数据库启动过程 Oracle数据库的启动分为多个阶段,包括实例启动(Instance Startup)、数据文件检查(Redo Log Checkpoint)、恢复过程(Recovery)以及监听器启动(Listener Startup)。通过自动启动脚本...

    ORACLE数据库启动过程祥解.doc

    Oracle数据库的启动过程是数据库管理员日常操作的重要环节,理解这一过程对于排查问题和维护数据库的稳定至关重要。在本文中,我们将深入探讨Oracle数据库在UNIX和Windows平台上的启动步骤,以及可能遇到的问题和...

    linux启动oracle方法

    ### Linux下启动Oracle数据库的...本文详细介绍了在Linux环境下启动Oracle数据库的完整过程,包括环境准备、具体步骤以及常见问题的解决方法。通过遵循上述步骤,您可以顺利地在Linux系统中启动和管理Oracle数据库。

    设置oracle10g自动启动

    8. **日志监控**: 确保配置了适当的日志记录,以便在启动过程中出现问题时能及时发现和诊断。通常,Oracle的日志文件位于`$ORACLE_HOME/dbs`目录下。 9. **安全考虑**: 为避免暴露不必要的风险,应限制非特权用户对...

Global site tag (gtag.js) - Google Analytics