• pfile,spfile 初始化参数文件顺序【weber出品】


    一、初始化参数文件

    启动实例时会读取初始化参数文件。参数文件有两种类型:

    1、服务器参数文件:这是首选类型的初始化参数文件。这是一个由数据库服务器写入或读取的二进制文件,不得手动进行编辑。此文件驻留在执行 Oracle 数据库的服务器中,而且永远存在,不受数据库关闭或启动的影响。这个文件通常称为服务器参数文件 (SPFILE)。文件默认名为 spfile<SID>.ora,启动时会自动搜索此文件。

    2、  文本初始化参数文件:这类初始化参数文件可由数据库服务器读取,但不能由其写入。必须使用文本编辑器手动设置和更改初始化参数设置,这些设置是永久的,不受数据库关闭或启动的影响。文件默认名为 init<SID>.ora,如果启动时未找到 SPFILE,则自动搜索此文件。

    二、两个参数文件的切换

      默认数据库是使用spfile。

      从spfile--->pfile:

    SQL> create pfile='/u01/pfile.ora' from spfile;
    
    File created.

    从pfile到spfile:

    SQL> create spfile from pfile='/u01/pfile.ora';
    
    File created.

    采用startup pfile的方式启动

    [oracle@oracle dbs]$ startup pfile=’u01/pfile.ora’;

    ORACLE instance started.

    Total System Global Area  285212672 bytes

    Fixed Size                  1218992 bytes

    Variable Size              79693392 bytes

    Database Buffers          201326592 bytes

    Redo Buffers                2973696 bytes

    Database mounted.

    Database opened.

    三、初始化参数文件顺序

    我们知道参数文件中有个SGA的大小设置,我们以此为例 :

    SQL> shutdown immediate;

    把数据库的spfile给移开

    [ora10g@first-oracle dbs]$ mv spfile.ora spfile.ora.bak
    [ora10g@first-oracle dbs]$ ls 
    hc_orcl.dat  initdw.ora  init.ora  lkORCL  orapworcl  spfile.ora.bak

      启动数据库试试看:你会发下

    SQL> startup nomount;
    ORA-01078: failure in processing system parameters
    LRM-00109: could not open parameter file '/u01/oracle/db_1/dbs/initorcl.ora'
    
    
    SQL> startup nomount;
    ORACLE instance started.
    
    Total System Global Area  281018368 bytes
    Fixed Size                  2020192 bytes
    Variable Size             100666528 bytes
    Database Buffers          176160768 bytes
    Redo Buffers                2170880 bytes
    SQL> show parameter sga
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    lock_sga                             boolean     FALSE
    pre_page_sga                         boolean     FALSE
    sga_max_size                         big integer 268M
    sga_target                           big integer 268M

    lock_sga的值为FALSE,这个很明显参数文件没有用到。

    我们再查看一下其他参数:

    SQL> show parameter controlfile;
    SQL> show parameter control
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    control_file_record_keep_time        integer     7
    control_files                        string      /u01/oracle/oradata/orcl/contr
                                                     ol01.ctl, /u01/oracle/oradata/
                                                     orcl/control02.ctl, /u01/oracl
                                                     e/oradata/orcl/control03.ctl

    可以查看参数值并能够修改参数,如果动态修改必须是spfile启动数据库。

    SQL> select status from v$instance;  
    
    STATUS
    ------------
    STARTED

    我们把spfile给移回来

    然后把数据库给:

    alter database mount
    
     
    
    alter database open;

    数据库装载过程包括执行以下任务:

      • 将数据库与以前启动的实例关联
      • 定位并打开参数文件中指定的控制文件
      • 通过读取控制文件来获取数据文件和联机重做日志文件的名称和状态。但是,此时不执行检查就可验证是否存在数据文件和联机重做日志文件
  • 相关阅读:
    classpath多个包添加
    不错的博客
    ARCGIS10.1 GeoDatabase深入理解:客户端连接与退出地理数据库时系统表的初始化
    ArcGIS Geodatabase版本控制机制的学习总结
    ARCGIS 10.1 发布服务问题以及注意事项汇总
    关于项目外包的一些总结
    ArcGIS与SuperMap的使用比较(1)
    [译]关于JavaScript 作用域你想知道的一切
    Apache 配置ArcGIS server/portal 反向代理
    arcgis server 无法手动删除切片
  • 原文地址:https://www.cnblogs.com/yaoweber/p/3977904.html
Copyright © 2020-2023  润新知