一、pfile spfile区别
Pfile 文本,可以被vi编辑 vi init<sid>.ora
Spfile 二进制 只能放在Oracle服务器端 spfile<sid>.ora
Spfile 可以被rman 备份(Rman只能备份二进制文件)
优先级不同,Oracle启动后要用参数文件,首先寻址spfile<sid>.ora 若无, 找spfile.ora , 若无,找 init<sid>.ora ,若还找不到,报错
修改方式不同,spfile :
Alter system|session set parameter_name =values <>;
参数文件路径;
Linux: $ORACLE_HOME/dbs/spfile$ORACLE_SID.ora
二、.参数文件的相互转换
Create pflile from spfile;
Create pfile=’/home/oracle/init.ora’ from spfile;
Create spfile from pfile;
11g :Create spfile from memory;
启动时指定pfile
1、 手动修改pfile
2、 Startup pfile=‘、、、、、’;//指定pfile
3、 Create spfile from pfile;
如何查看当前使用的哪个参数文件
方法1 SELECT distinct ISSPECIFIED FROM v$spparameter;
若结果为:FALSE 说明当前用的是pfile
方法2 修改一个参数 指定scope=spfile 如果不能修改,则当前使用的是pfile
ALTER system SET sga_target=200m scope=spfile;
三、修改参数:
Alter system|session set parameter_name =values scope=memory|spfile|both
Memory 只对当前instance的内存有效,下次启动无效(临时性的)
Spfile 只对spfile修改,必须经下一次启动才有效,当前实例没有修改。
Both 把内存和参数文件均修改。(默认为Both)
Alter Session 和 Alter System
v$parameter视图中,每个参数都有一个isses_modifiable和issys_modifiable
这两个属性,分别表示参数能否被alter session set。。和 alter system set。。
Alter system set sga_max_size=200m scope=spfile sid=’TEST’;//有多个实例的情况下,要指定SID对特定实例修改。
alter system修改的是参数文件,所有用户都会生效
alter session只是对当前session生效
alter database 一般修改的是控制文件信息
出自serapy的博客,转载务必保留:http://blog.sina.com.cn/s/blog_8c6d7ff60100vdqx.html