当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

SPFILE的备份与恢复二


  八. 导出SPFILE文件
  
  SPFILE文件可以导出为文本文件,使用导出、创建过程你可以向SPFILE中添加参数。
  
  SQL> create pfile='e:\initeyglen.ora' from spfile;
  
  文件已创建。
  
  SQL> shutdown immediate
  数据库已经关闭。
  已经卸载数据库。
  ORACLE 例程已经关闭。
  
  Initeyglen.ora文件的内容
  
  *.aq_tm_processes=1
  *.background_dump_dest='e:\oracle\admin\eyglen\bdump'
  *.compatible='9.2.0.0.0'
  *.control_files='e:\oracle\oradata\eyglen\control01.ctl',
  'e:\oracle\oradata\eyglen\control02.ctl',
  'e:\oracle\oradata\eyglen\control03.ctl'
  *.core_dump_dest='e:\oracle\admin\eyglen\cdump'
  *.db_block_size=8192
  *.db_cache_size=25165824
  *.db_domain=''
  *.db_file_multiblock_read_count=16
  *.db_name='eyglen'
  *.dispatchers='(PROTOCOL=TCP) (SERVICE=eyglenXDB)'
  *.fast_start_mttr_target=300
  *.hash_join_enabled=TRUE
  *.instance_name='eyglen'
  *.java_pool_size=33554432
  *.job_queue_processes=10
  *.large_pool_size=8388608
  *.open_cursors=300
  *.pga_aggregate_target=25165824
  *.processes=150
  *.query_rewrite_enabled='FALSE'
  *.remote_login_passwordfile='EXCLUSIVE'
  *.shared_pool_size=50331648
  *.sort_area_size=524288
  *.sql_trace=FALSE
  *.star_transformation_enabled='FALSE'
  *.timed_statistics=TRUE
  *.undo_management='AUTO'
  *.undo_retention=10800
  *.undo_tablespace='UNDOTBS1'
  *.user_dump_dest='e:\oracle\admin\eyglen\udump'
  
  然后我们可以使用这个pfile,或者手动修改其中的参数以启动数据库。
  
  我们修改这个pfile,增加一行
  
  *.log_archive_start=true
  
  使用这个PFILE启动数据库
  
  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 log_archive_start
  
  NAME TYPE
  ------------------------------------ ----------------------
  VALUE
  ------------------------------
  log_archive_start boolean
  TRUE
  SQL>
  
  然后我们可以使用新的PFILE创建SPFILE
  
  SQL> create spfile from pfile='e:\initeyglen.ora';
  
  文件已创建。
  
  重新启动数据库,新的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 spfile
  
  NAME TYPE
  ------------------------------------ ----------------------
  VALUE
  ------------------------------
  spfile string
  %ORACLE_HOME%\DATABASE\SPFILE%
  ORACLE_SID%.ORA
  SQL> show parameter log_archive_start
  
  NAME TYPE
  ------------------------------------ ----------------------
  VALUE
  ------------------------------
  log_archive_start boolean
  TRUE
  SQL>
  
  <b>九. 关于920的PFILE</b>
  
  在$ORACLE_BASE\admin\db_name\spfile下,你很可能可以看到一个类似这样[init.ora.192003215317]名字的文件,这就是初始化参数文件,只是跟上了时间戳。
  
  对于Oracle920,缺省的就使用spfile启动,但是这个spfile不是凭空而来,而是根据这个文件创建而来,你可以去掉这个长后缀,就是标准的pfile文件了。
  
  如果手动创建数据库,可以看到以下的过程:
  
  SQL> create spfile='e:\oracle\ora10G\database\spfilesunny.ora'
  FROM pfile='E:\oracle\admin\sunny\scripts\init.ora';
  
  文件已创建。
  
  如果你想要使用pfile启动数据库,那么你可以把spfile改名,NT缺省位于$ORACLE_HOME\database下,这样Oracle就不会使用这个spfile了 。
  
  你使用create pfile from spfile命令创建的pfile,也应该在这个目录下
  
  以下是一个完整的例子:
  
  E:\Oracle\Ora9iR2\database>dir *.ora
  驱动器 E 中的卷是 Doc
  卷的序列号是 980C-8EFF
  
  E:\Oracle\Ora9iR2\database 的目录
  
  2003-02-26 10:49 1,028 INITeyglen.ORA
  2003-02-10 14:35 2,048 PWDeyglen.ORA
  2003-02-26 11:05 3,584 SPFILEEYGLEN.ORA
  3 个文件 6,660 字节
  0 个目录 937,455,616 可用字节
  
  E:\Oracle\Ora9iR2\database>sqlplus /nolog
  
  SQL*Plus: Release 9.2.0.1.0 - Production on 星期三 2月 26 11:16:29 2003
  
  Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
  
  SQL> connect / as sysdba
  已连接到空闲例程。
  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 spfile
  
  NAME TYPE
  ------------------------------------ ----------------------
  VALUE
  ------------------------------
  spfile string
  %ORACLE_HOME%\DATABASE\SPFILE%
  ORACLE_SID%.ORA
  SQL> shutdown immediate
  数据库已经关闭。
  已经卸载数据库。
  ORACLE 例程已经关闭。
  SQL> host rename SPFILEEYGLEN.ORA SPFILEEYGLEN.ORA.bak
  
  SQL> host dir *.ora
  驱动器 E 中的卷是 Doc
  卷的序列号是 980C-8EFF
  
  E:\Oracle\Ora9iR2\database 的目录
  
  2003-02-26 10:49 1,028 INITeyglen.ORA
  2003-02-10 14:35 2,048 PWDeyglen.ORA
  2 个文件 3,076 字节
  0 个目录 937,435,136 可用字节
  
  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 spfile
  
  NAME TYPE
  ------------------------------------ ----------------------
  VALUE
  ------------------------------
  spfile string
  
  SQL>
  SQL> host rename SPFILEEYGLEN.ORA.bak SPFILEEYGLEN.ORA
  
  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 spfile
  
  NAME TYPE
  ------------------------------------ ----------------------
  VALUE
  ------------------------------
  spfile string
  %ORACLE_HOME%\DATABASE\SPFILE%
  ORACLE_SID%.ORA
  SQL>
相关内容
赞助商链接