ORACLE 参数文件介绍,oracle参数介绍
ORACLE数据库启动以后,通过select * from v$parameter这个语句可以查看到oracle数据库使用的所有参数。
对于oracle的参数文件,分为spfile 二进制文件和pfile 文本文件,现在的数据库一般都是使用spfile二进制文件作为启动oracle的参数文件。对于spfile和pfile之间的区别:
1 spfile是二进制文件(可以通过 string spfileorcl.ora进行二进制的文件查看),不可以使用文本编辑器修改,只能在sqlplus中使用命令动态修改参数。对于pfile是文本文件,可以直接使用文本编辑器进行修改,重启数据库后生效
2 spfile必须存储在服务端,一般是在$ORACLE_HOME/dbs目录下面,对于pfile则是可以存储在客户端,可以通过客户端的pfile启动数据库
3 spfile 和pfile之间可以动态转化 在sql命令下(不管是否已近启动数据库实例)
通过pfile创建spfile create pfile=’/u01/app/oracle/dbs/spfileorcl.ora’ from pfile=’/u01/app/oracle/dbs/initorcl.ora’(或者使用 create spfile from pfile)
4 如果启动数据库start 不指定参数文件(如果sid是orcl),则会在$ORACLE_HOME/dbs 目录下依次寻找参数文件 spfileorcl.ora>initorcl.ora
5 我们可以指定参数文件来启动数据库(这里只能通过pfile文件,不能是spfile文件)
startup pfile='/u01/app/oracle/dbs/init.ora'(使用pfile文件)
6 对于参数文件中没有指定的参数,均是采取相关参数的默认值
spfile文件是一个二进制文件,是不可以编辑的。如果你想通过编辑文本的方式来处理的。需要生成可以编辑的PFILE文件。
语句:create pfile from spfile;
pfile文件会和spfile文件在通一个目录下生成(WINDOWS:$ORACLE_HOME/DATABASE
UNIX:$ORACLE_HOME/DBS)
如果需要用pfile参数文件来启动数据需要把SPFILE文件改名,或者在启动时指定PFILE文件。
如果pfile参数文件中没有db_cerate_file_dest这个参数。你可以在最后按格式添加这个参数。具体参数如果设置和作用我就不说了。
你查看的是初始化文件initORCL.ora,initORCL.ora记录了控制文件的路径。所以内容是正确的 。
你可以
create pfile='e:\oracle\aaa.ora' from spfile;
然后查看e:\oracle\aaa.ora文件
这里记录就是你的参数,可以修改
接着通过pfile文件生成spfile文件
create spfile from pfile=='e:\oracle\aaa.ora';
启动数据库就可以了
pfile是文本的,可以修改,但修改后数据库必须重新启动才生效。
spfile是二进制的,不可以手工修改,可以在线修改参数,不需要重新启动数据库。