关于pfile和spfile的文件,spfile是二进制文件,是不可以直观来查看和修改的,改了之后就会损坏它的内部格式,需要通过命令来创建,pfile是文本文件可以修改,当startup的时候默认读取参数的先后顺序是 spfileSID.ora->spfile.ora->initSID.ora->init.ora; spfileNOVABD1->spfile.ora->initNOVADB1.ora>->init.ora 想对二进制文件进行了修改,应该先将pfile文件生成文本文件pfile,然后修改pfile文件, 将二进制文件spfile生成文本文件pfile,(默认生成的路径为$ORACLE_HOME/dbs) SQL>create
pfile from spfile; 例如我的initNOVADB1.ora就是最近生成的。 [oracle@node1 dbs]$ ls
-ltr total 96 -rw-r—– 1 oracle oinstall 8385 Sep 11 1998
init.ora -rw-r—– 1 oracle oinstall 12920 May 3 2001 initdw.ora -rw-r—– 1
oracle oinstall 1536 Apr 29 21:59 orapw+ASM1 lrwxrwxrwx 1 oracle oinstall
37 Apr 29 21:59 init+ASM1.ora ->
/opt/ora10g/admin/+ASM/pfile/init.ora -rw-r—– 1 oracle oinstall 1544 Apr 29
21:59 hc_+ASM1.dat -rw-rw—- 1 oracle oinstall 1544 Apr 29 22:15
hc_NOVADB1.dat -rw-r—– 1 oracle oinstall 1536 Apr 29 22:30
orapwNOVADB1 -rw-rw—- 1 oracle oinstall 1546 May 4 12:25
ab_+ASM1.dat -rw-r—– 1 oracle oinstall 1536 May 6 12:27
spfileNOVADB1.ora -rw-r–r– 1 oracle oinstall 40960 May 6 12:45
dbs.tar -rw-r—– 1 oracle oinstall 1263 May 6 13:14 initNOVADB1.ora
这样我们生成的pfile文件可以通过vi来编辑了,然后怎么才能让修改的pfile(initNOVADB1.ora)内容生效呢? SQL>create
spfile from pfile; 这里的pfile就是我们刚刚修改编辑过的,然后又一次生成了spfile,覆盖了原来的内容。
SQL> startup pfile=/opt/ora10g/product/10.2.0/db_1/dbs/initNOVADB1.ora 和
SQL>startup (默认从spfile启动)是等效的。我们也可以指定pfile来作为启动的文件。 |