修改Spfile的参数

使用pfile/spfile启动数据库


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


SQL> startup pfile='E:Oracleadmineyglenpfileinit.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%DATABASESPFILE%
ORACLE_SID%.ORA
SQL>
       

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

#Pfile link to SPFILE
SPFILE= 'E:OracleOra9iR2databaseSPFILEEYGLEN.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:OracleOra9iR2databaseSPF
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的修改是相当容易的.

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8119050/viewspace-1007149/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8119050/viewspace-1007149/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值