1. 首页
  2. IT资讯

使用pfile/spfile启动数据库

http://203.208.39.132/search?q=cache:iqzexyZcSLsJ:www.eygle.com/faq/Oracle9i.New.Feature.Spfile.02.htm+oracle+scope+both&cd=1&hl=zh-CN&ct=clnk&gl=cn&client=aff-360homepage&st_usg=ALhdy2-ecwQ2znQE4MO_Xg39nJ70AV4_QA[@more@]

三. 使用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增加了一个新选项:SCOPESCOPE参数有三个可选值:MEMORY ,SPFILE , BOTHMEMORY:只改变当前实例运行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的修改是相当容易的.

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

主题测试文章,只做测试使用。发布者:布吉卡,转转请注明出处:http://www.cxybcw.com/194654.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code