Oracle db 参数文件笔记

来源:互联网 发布:网盘管理系统 源码 编辑:程序博客网 时间:2024/06/03 15:18
1.PFILE

初始化参数都是以文本格式存放的,文件名建议使用initSID.ora,当使用pfile时,如果要修改初始化参数,只要手工编辑参数文件就可以。


2.SPFILE(因为spfile易于管理,并且可以使用rman进行备份,所以oracle建议使用spfile。)

SPFILE是以二进制格式存放的,文件名建议使用spfileSID.ora,SID为实例名,用文本编辑器打开SPFILE时,除了头部和尾部的二进制代码外,初始化参数的具体设置是可见的。SPFILE的初始化参数不能手工修改,只能使用alter system命令进行修改。alter system命令不是万能的,如果要改变数据库名,则需要修改初始化参数db_name,然后重新建立控制文件。(如果当前实例正在使用spfile,那么使用alter system命令将无法修改某些初始化参数(如:db_name)show parameter spfile确认当前使用是否为spfile(如果value存在返回值,表示实例正在使用spfile。该命令只能由特权用户和DBA用户执行。))


3.从spfile创建pfile,从pfile创建spfile;

SQL>create pfile from spfile;

SQL>create spfile from pfile;


4.使用parameter&V$parameter

一般查询参数用 SQL>show  parameter +参数名

但当使用show parameter显示初始化参数信息时,只能显示参数名、类型和参数值,为了取得初始化参数的详细信息,应该查询动态性能视图v$parameter。该动态性能视图只能由特权用户和DBA用户查询。eg:SQL>select name,type,value from v$parameter;


5.isses_modifiable, issys_modifiable, ismodified三个参数的使用

isses_modifiable用于标识初始化参数是否可以使用alter session 命令进行修改(true可以,false不可以);

issys_modifiable用于标识初始化参数是否可以使用alter system命令进行修改(immediate表示可以直接修改deferred表示需要带有deferred选项进行修改,false表示不能进行修改)

ismodified用于标识该初始化参数是否已被修改(modified表使用alter session进行了修改,system_mod表示使用alter system命令进行修改,false表示末进行修改)


6.静态参数与动态参数

静态参数是指只能通过修改参数文件而改变的初始化参数;动态参数是指在数据库运行时可以使用alter session或alter system命令动态改变的初始化参数

显示所有静态参数:(不能用alter system 也不能用alter session)
SQL>select name from v$parameter where isses_modifiable='FALSE' and issys_modifiable='FALSE';


7.修改动态参数的方法

(1)使用alter session命令修改动态参数
alter session命令可以修改当前会话的参数设置,并且该命令所进行的修改只对当前会话起作用。
SQL> alter session set nls_date_format='YYYY-MM-DD';
select sysdate from dual;
切换另一个会话窗口,查询时间是否更改? Answer:变回原来的值。

(2)使用alter system修改动态参数
使用alter system命令可以修改所有会话的参数设置,但只有特权用户和DBA用户可以执行该命令
SQL> show parameter user_dump_dest
SQL>alter system set user_dump_dest=’/home/oracle/u02’ scope=memory;
SQL> shutdown immediate
SQL> startup

SQL> show parameter user_dump_dest
scope=memory表示只是改变内存的参数值。如果不指定该选项,并且实例正在使用spfile,那么会同时更新内存和spfile

scope=spfile  修改spfile参数文件,需要重启数据库
scope=both    同时修改spfile和memory
scope=memory  修改memory
当使用alter system时,没有指定scope选项时,会同时修改spfile和memory。

(3)使用alter system ….deferred修改参数
使用alter system ….deferred修改参数时,只对新建立的会
文件修改初始化参数。
话起作用,对已存在会话不起作用。

SQL> show parameter sort_area_size
SQL>alter system set sort_area_size=4096 deferred;
切换另一个会话窗口,查询sort_area_size是否改? Answer: 没有改变。
SQL> shutdown immediate
SQL> startup
SQL> show parameter sort_area_size

查询是否更改?Answer:改变了。


8.修改静态参数

静态参数指只能通过修改参数文件进行修改的初始化参数。修改静态参数后,必须重新启动实例,参数设置才能起作用。如果实例使用pfile,那么通过编辑pfile文件修改初始化参数。

0 0