oracle spfile和pfile文件
pfile(Parameter File)从oracle8i开始使用,在oracle9i中也可以用。它以文本文件的形式存在,可以用vi等编辑器对 其中数据库参数进行修改。文件格式为initSID.ora。Oracle 9i在安装时为每个数据库建立了一个Pfile,默认的名称为“init+例 程名.ora”。
Oracle8i使用pfile存储初始化参数配置,这些参数在实例启动时被读取,任何修改需要重起实例才能生效。
spfile专用于oracle9i及以后版本,以二进制文件形式存在,含有数据库及例程的参数和数值,能够使用RMAN进行备份,但不能用文本编辑工具打开,不能用vi编辑器对其中数据库参数进行修改。文件格式为spfileSID.ora。
Oracle9i及以后版本,使用spfile存储初始化参数配置,支持使用ALTER SYSTEM或ALTER SESSION来动
态修改那些可动态修改的参数,任何更改能够立即生效,您能够选择使更改只应用于当前实例还是同时应用到spfile。这就使得任何对spfile的修改都
能够在命令行完成,我们能够完全告别手工修改初始化参数文档,这就大大减少了人为错误的发生。
除了第一次启动数据库需要pfile(然后根据pfile创建spfile),我们能够不再需要pfile,ORACLE强烈推荐使用spfile,应用其新特性来存储和维护初始化参数配置。
spfile改正了pfile管理混乱的问题,在多结点的环境里,pfile会有多个image,启动时候需要跟踪最新的image。这是个烦琐的
过程。 用spfile以后,所有参数改变都写到spfile里面(只要定义scope=spfile或both),参数配置有个权威的来源。
pfile和pfile的区别
就Oracle的spfile和pfile的区别主要是spfile的修改是可以在线的,而pfile的修改必须关闭数据库,到参数文件所在路径下通过
vi或记事本等文本编辑工具修改。(因为参数文件里面的内容太多,编辑起来容易导致错误的编辑到其它的参数,从而导致数据库无法起来,所以在9i以前一般
都是要备份pfile后再来做参数的修改,而且修改任何参数都需要停库,非常的不方便;在9i以后的spfile就可以同通过命令修改指定的参数了,而且
有很多参数都不用重启数据库,能够在线生效,这个在线生效的参数会随着数据库的版本增高而增加。如果参数修改有问题数据库起不来了可以在nomount状
态下创建成pfile再修改回来即可。)
修改spfile参数的三种模式:
scope=both 立即并永久改变,(默认模式)
scope=spfile 下次启动执行新的改变。
scope=memory 立即临时改变下次启动新参数失效
spfile 修改的方法:
SQL> alter system set processes = 100 scope=both; ----该参数不支持动态修改,必须修改完后重启数据库
alter system set processes = 100 scope=both
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
-------------------------------------------------------------------------------------------------------------------------------
SQL> show parameter pga;
NAME TYPE VALUE
------------------------------------ -------- ------
pga_aggregate_target big inte 798M
ger
SQL> alter system set pga_aggregate_target = 500m scope=both; -----该参数支持动态修改,所以就立即生效了
System altered.
SQL> show parameter pga;
NAME TYPE VALUE
------------------------------------ -------- ------
pga_aggregate_target big inte 500M
ger
SQL>
SQL> alter system set processes = 100 scope=spfile; ----修改完后重启数据库能生效,不信你试试。
System altered.
SQL> alter system set pga_aggregate_target = 700m scope=spfile; ----当然也可以选择数据库下次启动的时候生效。
System altered.
SQL> alter system set processes = 100 scope=memory; ----因为该参数不支持动态修改,同样也就无法实现立即生效,下次启动失效。
alter system set processes = 100 scope=memory
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
SQL>
SQL> alter system set pga_aggregate_target = 600m scope=memory; ---因为该参数支持动态修改,当然也就可以实现立即生效,下次启动失效咯。
System altered.
SQL>
如果使用的是pfile则无法通过命令进行修改,会报ORA-02095或32001错误。
SQL> alter system set processes = 100;
alter system set processes = 100
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
SQL> alter system set processes = 100 scope=spfile;
alter system set processes = 100 scope=spfile
*
ERROR at line 1:
ORA-32001: write to SPFILE requested but no SPFILE specified at startup
SQL> alter system set processes = 100 scope=both;
alter system set processes = 100 scope=both
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
SQL> alter system set processes = 100 scope=memory;
alter system set processes = 100 scope=memory
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
pfile文件路径/admin/pfile下面
通过create pfile='e:\initeyglen.ora' from spfile;保存
startup pfile='e:\initeyglen.ora'
create spfile from pfile='e:\initeyglen.ora'; //新的spfile生效,spfile是二进制文件,看不到,在系统运行时有
oracle spfile和pfile文件的更多相关文章
- oracle spfile和pfile文件(转)
--======================== -->Oracle 参数文件 --======================== /* 参数文件(10g中的参数文件) 主要用来记录数据库 ...
- ORACLE的SPFILE与PFILE
ORACLE中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件,可以分为两种类型.它们是在数据库实例启动时候加载的,决定了数据库的物理结构.内存.数据库的限制及系统大量的默认值.数据库的各种 ...
- Oracle修改系统参数导致系统无法启动对pfile文件恢复。
1.当前现象:Oracle启动报错ORA-27102 [oracle@JYDB1 ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.4.0 - Prod ...
- Oracle数据库使用pfile启动还是spfile启动---oracle
查看数据库使用pfile启动还是spfile启动 9i版本以后,一般是使用spfile启动,但前提是有这个spfile文件,如果同时存在spfile和pfile文件,会优先选择spfile模式启动数据 ...
- oracle参数文件spfile和pfile
一.参数文件说明 PFILE(Initialiazation Parameter Files)初始化参数文件,是文本文件,可直使用文本编辑器查看.如果数据库使用的是初始化参数文件PFILE,要想永久修 ...
- Oracle基础 07 参数文件 pfile/spfile
--查看数据库运行模式(spfile还是pfile)select decode(count(*),1,'spfile','pfile') from v$spparameterwhere rownum= ...
- pfile,spfile 初始化参数文件顺序【weber出品】
一.初始化参数文件 启动实例时会读取初始化参数文件.参数文件有两种类型: 1.服务器参数文件:这是首选类型的初始化参数文件.这是一个由数据库服务器写入或读取的二进制文件,不得手动进行编辑.此文件驻留在 ...
- 判断ORACLE启动时使用spfile还是pfile
自Oracle 9i以后启动的时候默认使用的初始化文件是spfile,我们可以通过如下三种方式来判断是SPFILE还是PFILE方式启动数据库.1.show parameter spfile2.sho ...
- oracle基础知识(六)----spfile与pfile
一, 认识参数文件 Oracle中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件.它们是在数据库实例启动时候加载的,决定了数据库的物理 结构.内存.数据库的限制及系统大量的默认值 ...
随机推荐
- 1206: [HNOI2005]虚拟内存 - BZOJ
Description 操作系统中一种重要的存储管理技术就是虚拟内存技术.操作系统中允许进程同时运行,也就是并行.每个进程都有其相对独立的数据块(进程运行的过程中将对其进行读写操作).理想的情况下,这 ...
- 增强LSH
通过LSH hash functions我们能够得到一个或多个hash table,每个桶内的数据之间是近邻的可能性很大.我们希望原本相邻的数据经过LSH hash后,都能够落入到相同的桶内,而不相邻 ...
- red5研究(一):下载,工程建立、oflaDemo安装、demo测试
一.red5下载.添加工程到myeclipse 1,从官网上下载red51.01版本(我下载的是red51.0的版本),下载链接http://www.red5.org/downloads/red5/1 ...
- Java中JSON的简单使用与前端解析
http://www.blogjava.net/qileilove/archive/2014/06/13/414694.html 一.JSON JSON(JavaScript Object Notat ...
- Winform 控件使用集锦
DataGridView中checkbox的值读取问题.checkbox选中之后,在CellClick事件中通过Value是读取不到值的,在当前单元格变为另一个单元格之前,它的值不会写到DataGri ...
- 关于JavaScript中的setTimeout()链式调用和setInterval()探索
http://www.cnblogs.com/Wenwang/archive/2012/01/06/2314283.html http://www.cnblogs.com/yangjunhua/arc ...
- Windbg调试命令详解(3)
3 进程与线程 既可以显示进程和线程列表,又可以显示指定进程或线程的详细信息.调试命令可以提供比taskmgr更详尽的进程资料,在调试过程中不可或缺. 3.1 进程命令 进程命令包括这些内容:显示进程 ...
- Vim插件列表
01.helm(Vim-Swoop) 02.ap/vim-buftabline 03.wesleyche/SrcExpl 04.vim proc 05.vim shell 06.dhruvasagar ...
- ServletContext对象
**1 ServletContext对象 1)在web应用中,由服务器创建的唯一的一个对象是ServletContext 2)ServletContext对象在每一个Servlet中取得都是相 ...
- CodeWars题目筛选
http://www.codewars.com/kata/search/csharp?q=&r%5B%5D=-8&xids=completed&beta=false 语言选择C ...