• Oracle 参数文件及相关操作介绍


    Oracle 参数文件及相关操作介绍

    by:授客 QQ1033553122

     

    1.服务器参数文件

    服务器参数文件是一个二进制文件,作为初始化参数的存储仓库。实例运行时,可用ALTER SYSTEM来改变参数值,且任何对初始化参数的改变设置不会随实例的关闭、开启而丢失。

     

    注意:不能手工编辑SPFILE,比如用文本工具打开查看值,会损坏文件,可通过使用STARTUP命令来重写SPFILE

    1)创建一个text类型的初始化参数文件,如spf_init.ora,该文件仅包含一个参数SPFILE,参数值为实际存在的SPFILE(非默认SPFILE)的路径,如下

    SPFILE = /u01/oracle/dbs/test_spfile.ora

    2)启动数据库,并指定PFILE参数,参数值指向步骤1中的spf_init.ora文件路径

    STARTUP PFILE = /u01/oracle/dbs/spf_init.ora

     

    参考连接:

    http://docs.oracle.com/cd/E11882_01/server.112/e25494/start.htm#CIHDFJGC

     

    SPFILE默认文件名和缺省位置

    Platform

    SPFILE Default Name

    SPFILE Default Location

    UNIX and Linux

    spfileORACLE_SID.ora

    未使用Oracle ASM:ORACLE_HOME/dbs或和数据文件处于相同未知

    使用了Oracle ASM:和数据文件在相同磁盘组

    Windows

    spfileORACLE_SID.ora

    未使用Oracle ASM:ORACLE_HOMEdatabase

    使用Oracle ASM:和数据文件在相同磁盘组

     

    2.初始化参数文件

    初始化参数文件是一个包含初始化参数列表的文本文件,可以以普通方式编辑。

    以下是初始化参数文件中的记录样本:

    PROCESSES = 100

    OPEN_LINKS = 12

    GLOBAL_NAMES = true

     

    如上,对于仅含单个值的参数,记录形式为:parameter_name=value

    对于包含多个值的参数,记录形式为:parameter_name=(value[,value] ...)(不推荐)

    对于包含多个值的参数,建议分开写,如下,重复同一个参数名,每个参数名对应一个参数值

    control_files='/u01/app/oracle/oradata/orcl/control01.ctl'

    control_files='/u01/app/oracle/oradata/orcl/control02.ctl'

    control_files='/u01/app/oracle/oradata/orcl/control03.ctl'

    说明:

    1.如果参数不支持多个值,那么仅最后一个值生效。

    2.参数值为字符串类型的,必须使用引号,如下:

     

    初始化参数文件名因操作系统平台而异。数据库管理员可以为初始化参数文件指定一个不同的名字。

     

    任何对初始化参数文件的改变,仅在实例关闭并重启后生效。

     

    PFILE的缺省文件名和文件位置:

    平台

    Default Name

    默认位置

    UNIXLinux

    initORACLE_SID.ora

    例如,如数据库实例名为mynewdb,PFILE文件名为:initmynewdb.ora

    ORACLE_HOME/dbs

    Windows

    initORACLE_SID.ora

    ORACLE_HOMEdatabase

    注:实际测试发现,linux下默认PFILE文件名为init.ora

     

    3.创建SPFILE

    方式1:为SPFILE指定文件名及文件所在路径

    CREATE SPFILE='ORACLE_HOME/dbs/test_spfile.ora'

    FROM PFILE='ORACLE_HOME/dbs/init.ora';

     

    方式2:根据当前内存中的参数值创建SPFILE文件

    CREATE SPFILE FROM MEMORY;

     

    方式3:不指定SPFILE文件名及路径(推荐,便于管理)

    CREATE SPFILE FROM PFILE='ORACLE_HOME/dbs/init.ora';

     

    说明:

    1.如果创建成功则会提示 File created

    2.ORACLE_HOME为实际的oracle安装主目录

    3.如不为SPFILE指定文件名,则在由平台决定的默认位置创建带有默认文件名的SPFILE文件

    4.采用默认SPFILE文件名和文件路径,或者指定的SPFILE文件名已存在,创建SPFILE时,会直接覆盖原有文件,且无提示

    5.可能遇到的错误>>ORA-32002: cannot create SPFILE already being used by the instance,,解决方法:为SPFILE指定带文件名及路径,如下

     

    4.改变初始化参数值

    参数类型

    1)动态初始化参数(Dynamic initialization parameter):参数设置作用于内存实例,且立即生效

    2)静态初始化参数(Static initialization parameter):参数设置不会立即生效,需要在PFILESPFILE中改变这些值,并在重启数据库后生效。

     

    改变参数值

    采用ALTER SYSTEM语句

    例:设置参数值为CONTROL_MANAGEMENT_PACK_ACCESS值为DIAGNOSTIC+TUNING

    SQL> ALTER SYSTEM SET CONTROL_MANAGEMENT_PACK_ACCESS='DIAGNOSTIC+TUNING' 

      2  SCOPE=BOTH;

     

    System altered.

     

    例:设置参数值为STATISTICS_LEVEL值为ALL,同时为参数添加注释to enable automatic database diagnostic monitoring

    SQL> ALTER SYSTEM SET STATISTICS_LEVEL=ALL COMMENT='to enable automatic database diagnostic monitoring'

      2  SCOPE=BOTH;

     

    System altered.

     

    SCOPE说明

    SCOPE语句

    描述

    SCOPE = SPFILE

    设置仅对server parameter file起作用.

    不对当前实例做任何改变.仅用于静态参数

    SCOPE = MEMORY

    设置仅对内存实例起作用,且设置立即生效

    因为命令不更新SPFILE,所以,重启实例后失效。不能用于静态参数

    SCOPE = BOTH(缺省)

    设置对内存实例和SPFILE都起作用,且立即生效。

    因为命令会更新SPFILE,所以,设置是持久的。不能用于静态参数

     

    附:清空SPFILE中所有参数值ALTER SYSTEM RESET

     

    5.导出SPFILE(创建PFILE文件)

    可用CREATE PFILE语句导出SPFILE文件到一个文本初始化参数文件(PFILE

     

    必须有SYSDBASYSOPER系统权限。

    1CREATE PFILE FROM SPFILE;

    说明:不给定文件名和路径时,使用默认的文件名和默认路径

     
    

    2CREATE PFILE='/u01/oracle/dbs/test_init.ora'

          FROM SPFILE='/u01/oracle/dbs/test_spfile.ora';

     

    3:从当前内存中的初始化参数创建PFILE,并指定文件名和路径

    CREATE PFILE='/u01/oracle/dbs/test_init.ora' FROM MEMORY;

     
    

    参考连接:

    http://docs.oracle.com/cd/E11882_01/server.112/e25494/create.htm#ADMIN12541

     

  • 相关阅读:
    ie6,ie7,ie8 css bug汇总以及兼容解决方法
    关于ie6下的双倍浮动
    团队合作,如何避免js冲突
    实例探索Class文件
    MFC获得本机的IP
    MessageBox英文显示OK/Cancel(适用于中英文界面)
    基于OpenCV的程序脱离动态链接库运行方法 (此方法也可用于将opencv源码编译成一个链接库)
    将摄像头原始RGB数据流编码成H.264文件
    在线程中创建非模态对话框——解决对话框创建一闪就消失问题
    .NET预处理器指令
  • 原文地址:https://www.cnblogs.com/shouke/p/10158035.html
Copyright © 2020-2023  润新知