博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DBA_Oracle PFile and SPFile文件的管理和使用(案例)
阅读量:5959 次
发布时间:2019-06-19

本文共 1622 字,大约阅读时间需要 5 分钟。

2014-08-25 Created By BaoXinjian

一、摘要


ORACLE中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件,可以分为两种类型PFile and SPFile。

它们是在数据库实例启动时候加载的,决定了数据库的物理结构、内存、数据库的限制及系统大量的默认值、数据库的各种物理属性、指定数据库控制文件名和路径等信息,是进行数据库设计和性能调优的重要文件。

 

1. 概念

初始化参数文件(Initialization Parameters Files),Oracle 9i之前,ORACLE一直采用PFILE方式存储初始化参数,该文件为文本文件。

服务器参数文件(Server Parameter Files),从Oracle 9i开始,Oracle引入了SPFILE文件,该文件为二进制格式,不能通过手工修改。

 

2. 修改spfile参数的三种模式

  • scope=both          立即并永久生效(默认模式)
  • scope=spfile         下次启动才能生效
  • scope=memory     立即生效但下次启动时失效

 

3. 如何查看SPFILE与PFILE的目录位置

方法1. 查看动态视图

SELECT NAME, VALUE, DISPLAY_VALUE FROM V$PARAMETER WHERE NAME ='spfile';

方法2. 查看参数

SQL> show parameter spfile

SQL> show parameter pfile

 

4. 判断数据库从SPFILE还是PFILE启动

方法1:查询动态视图V$PARAMETER,如果VALUE值为非空,则是SPFILE启动,否则是PFILE。

SELECT name, value, display_value FROM v$parameter WHERE name ='spfile';

方法2:SHOW PARAMETER命令查看

SQL> show parameter spfile;

方法3:通过v$spparameter视图,如果一下查询返回0值,表示你在使用pfile,否则表明你使用的是spfile

SQL> SELECT COUNT(1) FROM v$spparameter WHERE value is not null;

此v$spparameter的值来自于spfile文件定义,并在动态性能视图中显示

 

二、PFile 和 SPFile的区别


1:PFILE是文本文件的,而SPFILE是二进制格式的。

     PFILE文件可以用文本编辑器打开手工配置、而SPFILE不行,只能通过SQL命令在线修改。

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

2:SPFILE的修改是可以通过SQL命令在线修改,不再需要通过手工修改,对于动态参数所有更改可以立即生效,而PFILE的修改必须重启实例才能生效。

3:手动创建数据库而不是通过DBCA,则开始创建数据库时,只能定义PFILE。

  创建数据库完成后再通过PFILE定义SPFILE

 

三、Oracle启用参数文件顺序


Step1. spfile<sid>.ora

Unix/Linux缺省存放目录 $ORACLE_HOME/dbs/

Step2. spfile.ora

Unix/Linux缺省存放目录 $ORACLE_HOME/dbs/

Step3. init<sid>.ora

Unix/Linux缺省存放目录 $ORACLE_HOME/dbs/

 

四、案例 - 创建一个PFile,并启动,后复制为SPFile再次启动


 1. 建立PFile

2. 通过PFile建立SPFile <create spfile from pfile>

3. 查看SPFile内容, v$spparameter

 

Thanks and Regards

转载地址:http://qwuax.baihongyu.com/

你可能感兴趣的文章
HDOJ_ACM_Rescue
查看>>
笔记纪录
查看>>
九、oracle 事务
查看>>
Git - 操作指南
查看>>
正则表达式的贪婪与非贪婪模式
查看>>
SqlServer存储过程调用接口
查看>>
DOM
查看>>
通过jQuery.support看javascript中的兼容性问题
查看>>
NYOJ-取石子
查看>>
AngularJS
查看>>
《zw版·Halcon-delphi系列原创教程》halconxlib控件列表
查看>>
List与数组的相互转换
查看>>
Computer Science Theory for the Information Age-4: 一些机器学习算法的简介
查看>>
socketserver模块使用方法
查看>>
json模块
查看>>
各型号英特尔CUP的功率
查看>>
scanf()中的%c 不能正常输入的问题
查看>>
encodeURIcomponent编码和ASP.NET之间编码转换
查看>>
实验三 区域四连通填充算法
查看>>
关闭selinux服务
查看>>