spfilepfile的作用.docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
spfile

spfilepfile?1.参数文件的定义、作用  oracle数据库通过一系列参数来对数据库进行配置。这些参数是以键-值对的形式来表示的,如:MAXLOGFILES=50BACKGROUND_DUMP_DEST=C:\DUMP其中,等号左边是参数名,右边是对应的参数的值,值的类型有多种,典型的如数字和字符串.  参数文件就是存储这些参数的地方,oracle在启动时会从参数文件中读取相关的配置。2.参数文件的分类  在9i之前,参数文件只有一种,它是文本格式的,称为pfile,在9i及以后的版本中,新增了服务器参数文件,称为spfile,它是二进制格式的。这两种参数文件都是用来存储参数配置以供oracle读取的,但也有不同点,注意以下几点:第一,pfile是文本文件,spfile是二进制文件;第二,对于参数的配置,pfile可以直接以文本编辑器打开手工配置,而spfile不行,必须在数据库启动后,通过sql命令进行在线修改。第三,pfile配置改变后,要使用其生效,必须重新启动数据库,spfile的配置生效时限和作用域可以由修改参数的sql命令指定,可以立即生效,也可以不立即生效。当然有些参数的修改必须重启数据库才能生效;第四,可用sql命令由pfile创建spfile,也可以由spfile创建pfile;第五,如果是手动创建数据库而不是通过DBCA,则开始创建数据库时,你只能定义pfile 。因为它是文本格式的;第六,oracle数据库只使用一个参数文件,要么是pfile,要么是spfile,即么如何判断数据库当前使用的是哪一个参数文件呢?一种方法是能过create pfile来鉴别,如果当前使用的不是spfile,则相应格式的create pfile会产生错误。另一种方法是show?? parameter?? spfile命令,用来显示spfile的位置,如果显示的值为空,则表示使用的是pfile。3.参数文件的动作原理  oracle实例在启动时,会去读取参数文件中的配置,这个过程是这样的:数据库的startup命令中可以指定以哪个pfile来启动,但是请注意,只能指定pfile,不能指定spfile。当使用不带pfile 子句的startup 命令时,Oracle 将从平台指定的默认位置上的服务器参数文件(spfile)中读取初始化参数。Oracle查找spfile或者创通的init.ora的顺序是:在平台指定的默认位置上,Oracle首先查找名为spfile$ORACLE_SID.ora的文件,如果没有就查找spfile.ora文件,还没有的话,就找init$ORACLE_SID.ora文件。在$ORACLE_BASE\admin\db_name\spfile下,你很可能可以看到一个类似这样init.ora.1 92003215317]名字的文件,这就是初始化参数文件,只是跟上了时间戳。对于Oracle920 ,缺省的就使用spfile启动,但是这个spfile不是凭空而来,而是根据这个文件创建而来,你可以去掉这个长后缀,就是标准的pfile文件了。对于Windows NT 和Windows 2000?? ,其位置是:$ORACLE_HOME\database\spfile$ORACLE_SID.ora。  数据库在启动后,参数的配置值可以通过查询数据字典v$parameter得到。4.参数文件的修改方法  分为手动修改和在线修改。  手动修改用于修改pfile,直接用文本编辑打开pfile修改。要使用修改生效,须重启数据库。  在线修改是在数据库运行时,用alter system命令进行修改,命令如下(详细的命令语句请参考oracle官方参考文档):sqlalter system set job_queue_processed=50 scope=MEMORY注意,scope=MEMORY表示应用范围,取值如下:SPFILE:修改只对SPFILE有效,不影响当前实例,需要重启数据库才能生效;MEMORY:修改只对内存有效,即只对当前实例有效,且立即生效,但不会保存到SPFILE, 数据库重启后此配置丢失;BOTH:顾名思义,包含以上两种,立即生效,且永久生效。  对于ALTER SYSTEM的参数修改命令,请注意以下几点:第一,如果当前实例使用的是pfile而非spfile,则scope=spfile或scope=both会产生错误;第二,如果实例以pfile启动,则scope的默认值为MEMORY,若以spfile启动,则默认值为 BOTH;第三,可以使用DEFERRED表示所作修改只适用于将来的会话,还可以使用COMMENT写入注释,如:ALTER SYSTEM SET JOB_QUEUE_PROCESSES=5

文档评论(0)

cxiongxchunj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档