重庆思庄oracle技术分享-Oracle pfile与spfile文件参数

一、pfile与spfile

Oracle中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件。它们是在数据库实例启动时候加载的,决定了数据库的物理 结构、内存、数据库的限制及系统大量的默认值、数据库的各种物理属性、指定数据库控制文件名和路径等信息,是进行数据库设计和性能调优的重要文件。可以分为两种类型:
pfile: 初始化参数文件(Initialization Parameters Files),Oracle 9i之前,ORACLE一直采用pfile方式存储初始化参数,pfile 默认的名称为“init+例程名.ora”文件路径:/data/app/oracle/product/11.2.0/dbhome_1/dbs,这是一个文本文件,可以用任何文本编辑工具打开。
spfile:服务器参数文件(Server Parameter Files),从Oracle 9i开始,Oracle引入了Spfile文件,spfile 默认的名称为“spfile+例程名.ora”文件路径:/data/app/oracle/product/11.2.0/dbhome_1/dbs 以二进制文本形式存在,不能用vi编辑器对其中参数进行修改,只能通过SQL命令在线修改。

从操作系统上可以看到这两者的区别,初始化参数文件为ASCII文本文件,Spfile为数据文件。

二、spfile的好处

1、spfile改正了pfile管理混乱的问题,在多结点的环境里,pfile会有多个image,启动时候需要跟踪最新的image。这是个烦琐的过程。用spfile以后,所有参数改变都写到spfile里面(只要定义scope=spfile或both),参数配置有个权威的来源。
2、9i以前一般都是要备份pfile后再来做参数的修改,而且pfile的修改必须重启实例才能生效。非常的不方便;在9i以后的spfile就可以同通过命令修改指定的参数了,而且有很多参数都不用重启数据库,能够在线生效,这个在线生效的参数会随着数据库的版本增高而增加。如果参数修改有问题数据库起不来了可以在 nomount状态下创建成pfile再修改回来即可。)

三、查看pfile文件位置
SQL>Show parameter spfile

四、判断oracle数据库启动时使用pfile还是spfile
SQL>select decode(count(*),1,‘spfile’,‘pfile’) from v$spoarameter where rownum=1 and inspecified=‘TRUE’;

五、pfile与spfile创建
SQL>create spfile[=‘xxxxx’] from pfile[=‘xxxx’];
SQL>create pfile[=‘xxxxx’] from spfile[=‘xxxx’];
通过spfile创建pfile文件(此时会在$ORACLE_HOME/dbs目录下生成pfile:initorcl.ora),当然你也可以指定参数文件的位置。

六、使用pfile或spfile启动数据库
1、startup 启动次序 spfile优先于pfile。查找文件的顺序是 spfileSID.ora-〉spfile.ora-〉initSID.ora-〉init.ora(spfile优先于pfile)。
2、startup pfile=‘文件目录’ 使用pfile启动,则需指定完整路径,或删除spfile。
3、 如果在数据库的 O R A C L E H O M E / d b s / 目 录 下 既 有 s p f i l e 又 有 p f i l e , 使 用 s p f i l e 启 动 数 据 库 , 不 需 要 指 定 参 数 文 件 路 径 ( 因 为 数 据 库 会 优 先 选 择 s p f i l e 启 动 ) 。 4 、 如 果 参 数 文 件 不 在 ORACLE_HOME/dbs/目录下既有spfile又有pfile,使用spfile启动数据库,不需要指定参数文件路径(因为数据库会优先选择spfile启动)。 4、 如果参数文件不在 ORACLEHOME/dbs/spfilepfile,使spfilespfile4ORACLE_HOME/dbs/目录下,无论是通过spfile或pfile启动均需要指定完整路径。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值