Oracle数据库的两种初始化参数文件:文件:initsid.ora spfilesid.ora路径:$ORACLE_HOME/dbs纯文本参数文件和二进制参数文件的差
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就是使用的纯参数文件 【LINUX公社 】
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。