zoukankan      html  css  js  c++  java
  • 管理例程——管理初始化参数——参数文件


    参数文件用于存放例程的初始化参数。它包括参数文件和服务器参数文件。为了简化参数管理,建议使用sqfile。因为多数参数具有默认值,所以参数文件时间存放了非默认的初始化参数。


    1.pfile

    pfile是文本格式的参数文件。操作系统不同,pfile文件默认的存放路径也有所不同。

    windows:默认路径为%oracle_home%\database,默认文件名为init%oracle_sid%.ora。

    unix/linux:默认存放路径为$oracle_home\dbs,默认文件名为init$oracle_sid.ora。

    如果修改pfile文件的初始化参数,那么可以使用各种文本编辑器直接修改,原则如下:

    在修改或增加参数之前。首先检查参数是否存在,如存在就直接修改,否则在文件尾部增加一行。

    每行只能设置一个参数。

    字符参数的值可以用单引号或双引号引住,但数字参数不能用引号引住。

    如果参数具有多个值,则用头号隔开。

    禁用参数可以使用“#”。


    2.spfile

    spfile 是二进制式的参数文件。操作系统不通,spfile文件的默认存放路径也有所不同。

    windows:默认路径为%oracle_home%\database,默认文件名为spfile%oracle_sid%.ora。

    unix/linux:默认存放路径为$oracle_home\dbs,默认文件名为spfile$oracle_sid.ora。

    当用文本编辑器打开spfile时,除了头部和尾部的二进制代码之外,初始化参数的具体设置是可见的。注意,spfile的初始化参数不能直接编辑,而只能使用alter system 命令进行修改。

    conn sys/sys as sysdba
    alter system set remote_login_passwordfile=exclusive scope=spfile;

    3.确定例程所使用的参数文件

    当启动例程时,不仅可以使用spfile,而且可以使用pfile。当例程处于运行状态时,通过显示参数spfile的值,可以确定例程使用何种参数文件。若存在返回值,则表示使用sqfile;若不存在返回值,则表示使用pfile。

    例子:

    conn sys/sys as sysdba
    select values from v$parameter where name='spfile';


    SQL> select value from v$parameter where name='spfile';

    VALUE
    --------------------------------------------------------------------------------
    E:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\SPFILEORCL.ORA


    4.转换spfile和pfile

    尽管使用spfile比pfile更加简单,方便,但默写初始化参数(例如db_name,dispatchers)不能使用alter system……scope=spfile 直接修改。如果要修改这些参数,那么就需要在spfile和pfile之间进行转换。createpfile由于建立pfile文件,createspfile用于建立spfile,并且只有sysdba特权能够执行create pfile和create spfile命令。

    conn sys/sys as sysdba
    create pfile from spfile;
    create pfile='initaa.ora' from spfile;
    create pfile='d:\demo\initaa.ora' from spfile;
    create spfile='spfileaa.ora' from pfile;
    create spfile='d:demo\spfileaa.ora' from pfile='d:demo\initaa.ora';


    SQL> conn sys/sys as sysdba
    已连接。
    SQL> create pfile from spfile;

    文件已创建。

    SQL> create pfile='initaa.ora' from spfile;

    文件已创建。

    SQL> create pfile='d:\demo\initaa.ora' from spfile;

    文件已创建。

    SQL> create spfile='spfileaa.ora' from pfile;

    文件已创建。

    SQL> create spfile='d:demo\spfileaa.ora' from pfile='d:demo\initaa.ora';

    文件已创建。


    从oracle database 11g 开始,除了可以转换pfile和spfile之外,dba用户还可以根据内存参数设置建立pfile和spfile。

    create spfile ='spfilebb.ora' from memory;
    create pfile='initbb.ora' from memory;


    SQL> create spfile ='spfilebb.ora' from memory;

    文件已创建。

    SQL> create pfile='initbb.ora' from memory;

    文件已创建。


  • 相关阅读:
    LeetCode OJ 107. Binary Tree Level Order Traversal II
    LeetCode OJ 116. Populating Next Right Pointers in Each Node
    LeetCode OJ 108. Convert Sorted Array to Binary Search Tree
    LeetCode OJ 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode OJ 98. Validate Binary Search Tree
    老程序员解Bug的通用套路
    转载 四年努力,梦归阿里,和大家聊聊成长感悟
    转载面试感悟----一名3年工作经验的程序员应该具备的技能
    Web Service和Servlet的区别
    关于spring xml文件中的xmlns,xsi:schemaLocation
  • 原文地址:https://www.cnblogs.com/zhaojiedi1992/p/oracle11g_sql_0029.html
Copyright © 2011-2022 走看看