欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle11G数据库关于spfile的小小改进

程序员文章站 2022-05-01 18:08:08
...

数据库环境:Oracle11G功能spfile的改进在11G中,Oracle为保护spfile也做了一些小小的改进,例如,在运行时,spfile无法中被删除

数据库环境:Oracle 11G

功能spfile的改进

在11G中,Oracle为保护spfile也做了一些小小的改进,例如,在运行时,spfile无法中被删除时,可以从memory中直接读出所有参数的值模拟spfile被删除

[Oracle@rac2 dbs]$ rm spfileorcl.ora

尝试修改参数,Oracle会报错
SQL> alter system set sga_max_size=317M scope=spfile;
alter system set sga_max_size=317M scope=spfile
*
ERROR at line 1:
ORA-01565: error in identifying file '/opt/u01/app/Oracle/11G/dbs/spfile.ora'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3

使用以下命令创建一个新的spfile,但由于spfile正被Oracle使用,而运行时中Oracle并不实时

去监控spfile是否存在,,因此需要为新的spfile指定一个新的名字。如spfile.ora

SQL> create spfile from memory;
create spfile from memory
*
ERROR at line 1:
ORA-32002: cannot create SPFILE already being used by the instance
SQL> create spfile='/opt/u01/app/Oracle/11G/dbs/spfile.ora' from memory;
File created.

需要注意的是,这个命令读出的是当前内存中的值,当然也可以使用这个方式来,备份当前的spfile.可以看出Oracle越来越方便。

Oracle11G数据库关于spfile的小小改进