如何删除或重置spfile中的参数

时间:2023-03-09 09:46:34
如何删除或重置spfile中的参数

在ORACLE中,修改spfile中的参数一般非常容易,那么如何删除spfile中的参数呢? 下面我们用一个案例来介绍一下,如何删除spfile中的参数,一种方法就是创建对应的pfile,删除对应的参数后,然后用当前的pfile反向生成对应的spfile,还有一种方法就是使用命令来删除对应的参数。在删除参数之前,最好先备份一下对应的spfile文件。

假如我们在spfile参数中添加了参数_kghdsidx_count, 那么如何删除这个参数呢?

alter system set "_kghdsidx_count"=2 scope=spfile;

SQL> show parameter spfile;

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

spfile                               string      /u01/app/oracle/product/10.2.0

                                                 /db_1/dbs/spfileSCM2.ora

SQL> show parameter spfile;

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

spfile                               string      /u01/app/oracle/product/10.2.0

                                                 /db_1/dbs/spfileSCM2.ora

SQL> create pfile='/u01/app/oracle/product/10.2.0/db_1/dbs/pfile_tmp.ora' from spfile;

 

File created.

 

SQL> 

如何删除或重置spfile中的参数

如下所示,我们查看参数文件spfile对应的spfile文件,可以看到参数*._kghdsidx_count=2,

如何删除或重置spfile中的参数

那么此时可以使用下面命令删除参数。注意: scope和sid这两个参数不能少,否则会提示报错。

SQL> alter system reset "_kghdsidx_count" scope=spfile sid='*';

 

System altered.

重启数据库后,就会看到这个参数已经被删除了。