oracle数据库的两种初始化参数文件

oracle数据库的两种初始化参数文件:
文件:initsid.ora  spfilesid.ora
路径:$ORACLE_HOME/dbs

纯文本参数文件和二进制参数文件的差别:
1.修改参数的方式不同:initsid.ora修改参数的时候直接编辑文件,再保存就可以了。spfilesid.ora必须使用命令更改。
2.优先级不同
3.是否动态存储修改的参数
4.存在的位置不同
      纯文本可以存在客户端
      二进制文件一定存在于server端
5.rman可以备份二进制参数文件,不能备份存文本参数文件。

验证数据库正在使用的参数类型:
select distinct ISSPECIFIED from v$spparameter;
如果含有true 就是使用二进制参数文件
如果只有false就是使用的纯参数文件


SQL> select ISSPECIFIED,count(*) from v$spparameter group by ISSPECIFIED;

ISSPEC   COUNT(*)
------ ----------
TRUE           23
FALSE         237
上面的查询表示有23个参数存在与二进制参数文件,237个参数为默认值。

两类参数文件的相互互换:
SQL>create pfile from spfile;
SQL>create spfile from pfile;
上面的命令在连接的sys就可以使用,而不必启动数据库。

参数文件的优先级:
spfilesid.ora
spfile.ora
initsid.ora

查询二进制参数文件的参数设置:
SQL> select name,value from v$spparameter where ISSPECIFIED='TRUE';

修改参数有三个选项:
SQL> show parameter pga_aggregate_target;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_target                 big integer 77M

SQL> alter system set pga_aggregate_target=80m scope=memory;
System altered.
只修改内存的值,不改变参数文件的设置,下回再次启动数据库时值还是旧的,能修改的前提是该参数可以动态修改,如果是静态参数只能使用下面的方法。

SQL> alter system set pga_aggregate_target=85m scope=spfile;
System altered.
只修改二进制文件,而不修改内存,静态参数只能先改文件再重启数据库。

SQL> alter system set pga_aggregate_target=78m scope=both;
System altered.
同时修改二进制文件和内存,该参数必须是可以动态修改的。

SQL> alter system set pga_aggregate_target=77m;
System altered.
如果没有指明修改哪里,默认为参数文件和内存同时修改,默认是both。



作者: hairui8991   发布时间: 2010-12-02