oracle初始化参数文件spfile、pfile及修改参数的两种方式分别是什么

这篇文章给大家介绍oracle 初始化参数文件spfile、pfile及修改参数的两种方式分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的金平网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

oracle数据库在启动过程中要读取初始化参数文件以确定一系列参数,例如数据库名pfile称、SGA大小、最大连接数等等,pfile就是这样的一个初始化参数文件,文本文件,可以直接打开编辑,数据库启动时到默认目录下查找此文件,或者在命令行指定pfile文件:

SQL>startup  pfile='H:\oracle\product\10.2.0\db_1\database\INITorcl.ORA

pflie文件默认命名方式就是init.ora

但是从Oracle9i开始,spfile被引入,s代表server,是服务器端的二进制文件,无法直接打开修改。Oracle首选spfile.ora文件作为启动参数文件;如果该文件不存在,选择spfile.ora;如果前两者都不存在,才选择init.ora文件;如果以上三个文件都不存在,则无法启动实例。当然直接指定pfile的启动方式对新版本仍然有效。

spflie是不能直接打开修改,那么如何修改?有两种方式:

1. SQL> alter  system set xx=×× scope=spfile/both --意思是修改参数并把修改写入spfile中,如果scope的值是both则表示同时修改当前实例的参数并把修改写入spflie重启实例后修改生效,注意如果是静态参数,只能使用spfile选项,所谓静态参数是指无法在当前实例中改变的参数,这种参数只能通过将修改写入spfile,重启实例后才能生效。需要注意的一个问题是,省去scope选项时,默认是both,在使用spfile启动实例时;如果使用pfile启动实例,那么默认是memory,也就是说修改不会保存到参数文件中,仅对当前实例有效,参考自http://www.itpub.net/thread-1099216-1-1.html 7th-floor。

2. 通过pfile和spflie的互生成修改spfile。

    ①先将spfile生成pfile:SQL>create pfile from spfile; --只要spfile存在于默认目录下,在数据库的任何阶段都可以执行(包括关闭、nomount、mount和open)。执行后在默认目录下生成init.ora文件,即所说的pfile,windows下oracle10g默认目录是ORACLE_HOME\database。

   ②修改pfile文件中的参数。若出现在无法打开的情况,可以复制到桌面修改之后替换回去即可。

   ③用修改后的pfile文件生成spfile文件:SQL>create spfile from pfile;  -- 注意这一步只能在实例关闭阶段执行。

补充一句,在pfile和spfile互生成中,可以不使用默认文件而指定文件,如:

SQL>create spfile from pfile='H:\oracle\product\10.2.0\your_pfile';

关于oracle 初始化参数文件spfile、pfile及修改参数的两种方式分别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


当前名称:oracle初始化参数文件spfile、pfile及修改参数的两种方式分别是什么
本文地址:http://azwzsj.com/article/pijeoh.html