一、参数文件说明
PFILE(Initialiazation Parameter Files)初始化参数文件,是文本文件,可直使用文本编辑器查看。
如果数据库使用的是初始化参数文件PFILE,要想永久修改初始化参数,DBA必须要先关闭数据库,再修改该文件,然后用修改后的PFILE重新启动数据库。
文件名:init.ora
SPFILE(Server Parameter Files)服务器参数文件,位于服务端,是二进制文件,不能直接修改,在数据库运行的过程中也可以修改该文件。
路径:$ORACLE_HOME/dbs(linux/Unix系统) 默认名字:spfile+sid.ora 如:spfileorcl.ora
windows路径为:%ORACLE_HOME\database
如果数据库使用的是服务器参数文件SPFILE,则DBA使用ALTER SYSTEM SET ... SCOPE=SPFILE命令修改相应参数即可。
临时修改参数文件:
ALTER SYSTEM SET .... SCOPE=MEMORY -----只对当前实例生效,重启实例失效。
ALTER SESSION SET .... ----只对当前会话生效
二、参数文件查看
SQL> show parameter spfile; --查看参数文件位置
NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
spfile string /home/oracle/product/10.2.0/db_1/dbs/spfileorcl.ora
SQL> select name,value from v$parameter where name=‘spfile‘;
NAME VALUE
spfile /home/oracle/product/10.2.0/db_1/dbs/spfileorcl.ora
SQL> show parameter shared_pool_size; --查看具体的某个参数值
NAME TYPE VALUE
------------------------------------ ---------------------- ---------
shared_pool_size big integer 0
SQL> select name,value from v$parameter where name=‘shared_pool_size‘;
SQL> show parameters; 显示所有参数文件
三、使用参数文件启动数据库
可使用SPFILE和PFILE启动数据库。
使用SPFILE启动数据库时,直接startup 即可。
使用PFILE启动数据库时,需要指定pfile文件位置,如:SQL> startup pfile=‘D:\test\init.ora‘;
四、参数文件的修改及创建
如果DBA使用参数文件启动数据库,要想修改参数文件pfile,则必须停止数据库,用文本编辑工具直接修改pfile文件,再使用pfile启动数据库。
如果数据库使用的是服务器参数文件SPFILE,则DBA使用ALTER SYSTEM SET ... SCOPE=SPFILE命令修改相应参数即可。
临时修改参数文件:
ALTER SYSTEM SET .... SCOPE=MEMORY -----只对当前实例生效,重启实例失效。
ALTER SESSION SET .... ----只对当前会话生效
由于SPFILE文件是二进制文件,无法直接编辑,如果要修改,可先通过SPFILE创建PFILE(客户端初始化参数文件),PFILE可直接用记事本打开编辑。再通过PFILE创建SPFILE即可。
SQL> SHOW PARAMETER SPFILE;
NAME TYPE VALUE
------- ----------- ------------------------------
spfile string D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\SPFILEORCL.ORA
SQL> create pfile = ‘D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\PFILEORCL.ORA‘ from spfile;--后也可加上绝对路径from spfile=‘……‘;
文件已创建。
SQL> create spfile from pfile= ‘D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\PFILEORCL.ORA‘; --从PFILE文件创建SPFILE文件。
SQL> create spfile=‘D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\SPFILEORCL.ORA‘ from pfile= ‘D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\PFILEORCL.ORA‘;