Oracle9i新特性spfile之二 -How to modify parameter within spfile

王朝oracle·作者佚名  2004-11-29
窄屏简体版  字體: |||超大  

三. 使用pfile/spfile启动数据库

如果你想使用pfile启动数据库,你可以在启动时指定pfile或者删除spfile.

SQL> startup pfile='E:\Oracle\admin\eyglen\pfile\init.ora';

你不能以同样的方式指定spfile,但是可以创建一个包含spfile参数的pfile文件,指向spfile.

SPFILE是一个自Oracle9i引入的初始化参数,类似于IFILE参数。 SPFILE参数用于定义非缺省路径的spfile文件。

你可以在PFILE链接到SPFILE文件,同时在PFILE中定义其他参数,如果参数重复设置,后读取的参数将取代先前的设置。

PFILE参数的使用,例如:

这是我们使用SPFILE启动的情况

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

数据库已经打开。

SQL> show parameter log_archive_start

NAME TYPE

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

VALUE

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

log_archive_start boolean

TRUE

SQL> show parameter spfile

NAME TYPE

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

VALUE

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

spfile string

%ORACLE_HOME%\DATABASE\SPFILE%

ORACLE_SID%.ORA

SQL>

我们修改PFILE文件内容如下:

#Pfile link to SPFILE

SPFILE= 'E:\Oracle\Ora9iR2\database\SPFILEEYGLEN.ORA'

log_archive_start = false

可以预见这个log_archive_start参数设置将会代替SPFILE中的设置:

SQL> startup pfile='e:\initeyglen.ora'

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

数据库已经打开。

SQL> show parameter spfile

NAME TYPE

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

VALUE

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

spfile string

E:\Oracle\Ora9iR2\database\SPF

ILEEYGLEN.ORA

SQL> show parameter log_archive_start

NAME TYPE

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

VALUE

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

log_archive_start boolean

FALSE

然后我们可以使用ALTER SYSTEM方式将修改固定到SPFILE.

SQL> alter system set log_archive_start=false scope=spfile;

系统已更改。

所以你也可以通过如上方式在启动时修改初始化参数。比我们在本文最后介绍的导入导出方法要简便的多。

四. 修改参数

可以通过ALTER SYSTEM或者导入导出来更改SPFILE的内容。

ALTER SYSTEM增加了一个新选项:SCOPE。SCOPE参数有三个可选值:MEMORY ,SPFILE , BOTH

MEMORY:只改变当前实例运行

SPFILE:只改变SPFILE的设置

BOTH:改变实例及SPFILE

1. SCOPE=MEMORY

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

TRUE

SQL> ALTER SYSTEM SET timed_statistics=FALSE SCOPE=MEMORY;

系统已更改。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

FALSE

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

数据库已经打开。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

TRUE

2. SCOPE=SPFILE

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

TRUE

SQL> ALTER SYSTEM SET timed_statistics=FALSE SCOPE=SPFILE;

系统已更改。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

TRUE

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

数据库已经打开。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

FALSE

SQL>

3. SCOPE = BOTH

使用BOTH选项实际上等同于不带参数的ALTER SYSTEM语句。

注意:如果修改静态参数,那么需要指定SPFILE参数,否则将会报错。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

FALSE

SQL> ALTER SYSTEM SET timed_statistics=TRUE SCOPE=BOTH;

系统已更改。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

TRUE

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

数据库已经打开。

SQL> show parameter timed_statistics

NAME TYPE

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

VALUE

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

timed_statistics boolean

TRUE

SQL> ALTER SYSTEM SET sql_trace=FALSE SCOPE=BOTH;

ALTER SYSTEM SET sql_trace=FALSE SCOPE=BOTH

*

ERROR 位于第 1 行:

ORA-02095: 无法修改指定的初始化参数

SQL> ALTER SYSTEM SET sql_trace=FALSE SCOPE=SPFILE;

系统已更改。

4.你也可以在数据库shutdown时创建和修改spfile,例如:

SQL> show sga

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> create pfile from spfile;

文件已创建。

SQL> create spfile from pfile;

文件已创建。

SQL>

所以spfile的修改是相当容易的.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航