邪恶八进制信息安全团队技术讨论组's Archiver

pub!1c 2006-2-12 11:41

[转载]Oracle诊断案例-Spfile案例一则

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java id=text1363390 style="FONT-SIZE: 12px" script>信息来源:邪恶八进制信息安全团队</SPAN></FONT></P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java style="FONT-SIZE: 12px" script>
<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java id=text1363392 style="FONT-SIZE: 12px" script>情况说明:<BR>系统:SUN Solaris8<BR>数据库版本:9203<BR>问题描述:工程人员报告,数据库在重新启动时无法正常启动.检查发现UNDO表空间丢失.<BR>问题诊断及解决过程如下:</SPAN></FONT></P></SPAN></FONT>

pub!1c 2006-2-12 11:41

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363396 style="FONT-SIZE: 12px"><STRONG>1. 登陆系统检查alert.log文件</STRONG><BR><BR>检查alert.log文件是通常是我们诊断数据库问题的第一步<BR><BR>SunOS 5.8<BR><BR>login: root<BR>Password: <BR>Last login: Thu Apr 1 11:39:16 from 10.123.7.162<BR>Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001<BR>You have new mail.<BR># su - oracle<BR>bash-2.03$ cd $ORACLE_BASE/admin/*/bdump<BR>bash-2.03$ vi *.log<BR><BR>"alert_gzhs.log" 7438 lines, 283262 characters <BR>Sat Feb 7 20:30:06 2004<BR>Starting ORACLE instance (normal)<BR>LICENSE_MAX_SESSION = 0<BR>LICENSE_SESSIONS_WARNING = 0<BR>SCN scheme 3<BR>Using log_archive_dest parameter default value<BR>LICENSE_MAX_USERS = 0<BR>SYS auditing is disabled<BR>Starting up ORACLE RDBMS Version: 9.2.0.3.0.<BR>System parameters with non-default values:<BR>processes = 150<BR>timed_statistics = TRUE<BR>shared_pool_size = 1157627904<BR>large_pool_size = 16777216<BR>java_pool_size = 637534208<BR>control_files = /u01/oradata/gzhs/control01.ctl,<BR>/u02/oradata/gzhs/control02.ctl, <BR>/u03/oradata/gzhs/control03.ctl<BR>db_block_size = 8192<BR>db_cache_size = 2516582400<BR>compatible = 9.2.0.0.0<BR>log_archive_start = TRUE<BR>log_archive_dest_1 = LOCATION=/u06/oradata/gzhs/arch<BR>log_archive_format = %t_%s.dbf<BR>db_file_multiblock_read_count= 16<BR>fast_start_mttr_target = 300<BR>undo_management = AUTO<BR>undo_tablespace = UNDOTBS1<BR>undo_retention = 10800<BR>remote_login_passwordfile= EXCLUSIVE<BR>db_domain =<BR>instance_name = gzhs<BR>dispatchers = (PROTOCOL=TCP) (SERVICE=gzhsXDB)<BR>job_queue_processes = 10<BR>hash_join_enabled = TRUE<BR>background_dump_dest = /oracle/admin/gzhs/bdump<BR>user_dump_dest = /oracle/admin/gzhs/udump<BR>core_dump_dest = /oracle/admin/gzhs/cdump<BR>sort_area_size = 524288<BR>db_name = gzhs<BR>open_cursors = 300<BR>star_transformation_enabled= FALSE<BR>query_rewrite_enabled = FALSE<BR>pga_aggregate_target = 838860800<BR>aq_tm_processes = 1<BR>PMON started with pid=2<BR>DBW0 started with pid=3<BR>LGWR started with pid=4<BR>CKPT started with pid=5<BR>SMON started with pid=6<BR>"alert_gzhs.log" 7438 lines, 283262 characters<BR>USER: terminating instance due to error 30012<BR>Instance terminated by USER, pid = 26433<BR>ORA-1092 signalled during: ALTER DATABASE OPEN...<BR>Thu Apr 1 11:11:08 2004<BR>Starting ORACLE instance (normal)<BR>LICENSE_MAX_SESSION = 0<BR>LICENSE_SESSIONS_WARNING = 0<BR>SCN scheme 3<BR>Using log_archive_dest parameter default value<BR>LICENSE_MAX_USERS = 0<BR>SYS auditing is disabled<BR>Starting up ORACLE RDBMS Version: 9.2.0.3.0.<BR>System parameters with non-default values:<BR>processes = 150<BR>timed_statistics = TRUE<BR>shared_pool_size = 1157627904<BR>large_pool_size = 16777216<BR>java_pool_size = 637534208<BR>control_files = /u01/oradata/gzhs/control01.ctl, /u02/oradata/gzhs/control02.ctl, /u03/oradata/gzhs/control03.ctl<BR>db_block_size = 8192<BR>db_cache_size = 2516582400<BR>compatible = 9.2.0.0.0<BR>log_archive_start = TRUE<BR>log_archive_dest_1 = LOCATION=/u06/oradata/gzhs/arch<BR>log_archive_format = %t_%s.dbf<BR>db_file_multiblock_read_count= 16<BR>fast_start_mttr_target = 300<BR>undo_management = AUTO<BR>undo_tablespace = UNDOTBS1<BR>undo_retention = 10800<BR>remote_login_passwordfile= EXCLUSIVE<BR>db_domain =<BR>instance_name = gzhs<BR>dispatchers = (PROTOCOL=TCP) (SERVICE=gzhsXDB)<BR>job_queue_processes = 10<BR>hash_join_enabled = TRUE<BR>background_dump_dest = /oracle/admin/gzhs/bdump<BR>user_dump_dest = /oracle/admin/gzhs/udump<BR>core_dump_dest = /oracle/admin/gzhs/cdump<BR>sort_area_size = 524288<BR>db_name = gzhs<BR>open_cursors = 300<BR>star_transformation_enabled= FALSE<BR>query_rewrite_enabled = FALSE<BR>pga_aggregate_target = 838860800<BR>aq_tm_processes = 1<BR>PMON started with pid=2<BR>DBW0 started with pid=3<BR>LGWR started with pid=4<BR>CKPT started with pid=5<BR>SMON started with pid=6<BR>RECO started with pid=7<BR>CJQ0 started with pid=8<BR>Thu Apr 1 11:11:13 2004<BR>starting up 1 shared server(s) ...<BR>QMN0 started with pid=9<BR>Thu Apr 1 11:11:13 2004<BR>starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...<BR>ARCH: STARTING ARCH PROCESSES<BR>ARC0 started with pid=12<BR>ARC0: Archival started<BR>ARC1 started with pid=13<BR>Thu Apr 1 11:11:13 2004<BR>ARCH: STARTING ARCH PROCESSES COMPLETE<BR>Thu Apr 1 11:11:13 2004<BR>ARC0: Thread not mounted<BR>Thu Apr 1 11:11:13 2004<BR>ARC1: Archival started<BR>ARC1: Thread not mounted<BR>Thu Apr 1 11:11:14 2004<BR>ALTER DATABASE MOUNT<BR>Thu Apr 1 11:11:18 2004<BR>Successful mount of redo thread 1, with mount id 1088380178.<BR>Thu Apr 1 11:11:18 2004<BR>Database mounted in Exclusive Mode.<BR>Completed: ALTER DATABASE MOUNT<BR>Thu Apr 1 11:11:27 2004<BR>alter database open<BR>Thu Apr 1 11:11:27 2004<BR>Beginning crash recovery of 1 threads<BR>Thu Apr 1 11:11:27 2004<BR>Started first pass scan<BR>Thu Apr 1 11:11:28 2004<BR>Completed first pass scan<BR>1 redo blocks read, 0 data blocks need recovery<BR>Thu Apr 1 11:11:28 2004<BR>Started recovery at<BR>Thread 1: logseq 177, block 2, scn 0.33104793<BR>Recovery of Online Redo Log: Thread 1 Group 3 Seq 177 Reading mem 0<BR>Mem# 0 errs 0: /u01/oradata/gzhs/redo03.log<BR>Thu Apr 1 11:11:28 2004<BR>Completed redo application<BR>Thu Apr 1 11:11:28 2004<BR>Ended recovery at<BR>Thread 1: logseq 177, block 3, scn 0.33124794<BR>0 data blocks read, 0 data blocks written, 1 redo blocks read<BR>Crash recovery completed successfully<BR>Thu Apr 1 11:11:28 2004<BR>LGWR: Primary database is in CLUSTER CONSISTENT mode<BR>Thread 1 advanced to log sequence 178<BR>Thread 1 opened at log sequence 178<BR>Current log# 1 seq# 178 mem# 0: /u01/oradata/gzhs/redo01.log<BR>Successful open of redo thread 1.<BR>Thu Apr 1 11:11:28 2004<BR>ARC0: Evaluating archive log 3 thread 1 sequence 177<BR>Thu Apr 1 11:11:28 2004<BR>ARC0: Beginning to archive log 3 thread 1 sequence 177<BR>Creating archive destination LOG_ARCHIVE_DEST_1: '/u06/oradata/gzhs/arch/1_177.dbf'<BR>Thu Apr 1 11:11:28 2004<BR>SMON: enabling cache recovery<BR>ARC0: Completed archiving log 3 thread 1 sequence 177<BR>Thu Apr 1 11:11:28 2004<BR>Errors in file /oracle/admin/gzhs/udump/gzhs_ora_27781.trc:<BR>ORA-30012: \263\267\317\373\261\355\277\325\274\344 'UNDOTBS1' \262\273\264\346\324\332\273\362\300\340\320\315\262\273\325\375\310\<BR>267<BR><FONT color=blue>Thu Apr 1 11:11:28 2004<BR>Error 30012 happened during db open, shutting down database<BR>USER: terminating instance due to error 30012<BR>Instance terminated by USER, pid = 27781<BR>ORA-1092 signalled during: alter database open...</FONT><BR>:q<BR><BR>在警报日志末尾显示了数据库在Open状态因为错误而异常终止.</SPAN></FONT></P>

pub!1c 2006-2-12 11:41

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363398 style="FONT-SIZE: 12px"><STRONG>2. 尝试重新启动数据库<BR></STRONG><BR>bash-2.03$ sqlplus "/ as sysdba"<BR><BR>SQL*Plus: Release 9.2.0.3.0 - Production on 星期四 4月 1 11:43:52 2004<BR><BR>Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.<BR><BR>已连接到空闲例程。<BR><BR>SQL> startup<BR>ORACLE 例程已经启动。<BR><BR>Total System Global Area 4364148184 bytes<BR>Fixed Size 736728 bytes<BR>Variable Size 1845493760 bytes<BR>Database Buffers 2516582400 bytes<BR>Redo Buffers 1335296 bytes<BR>数据库装载完毕。<BR>ORA-01092: ORACLE 例程终止。强行断开连接<BR><BR><BR>工程人员报告的问题重现.</SPAN></FONT></P>

pub!1c 2006-2-12 11:41

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363401 style="FONT-SIZE: 12px"><STRONG>3. 检查数据文件</STRONG><BR><BR>bash-2.03$ cd /u01/ oradata/gzhs<BR>bash-2.03$ ls -l<BR>total 55702458<BR><FONT color=red>-rw-r----- 1 oracle dba 1073750016 Apr 1 11:44 UNDOTBS2.dbf</FONT><BR>-rw-r----- 1 oracle dba 1073750016 Apr 1 11:44 WAP12_BILLINGDETAIL.dbf<BR>-rw-r----- 1 oracle dba 1073750016 Apr 1 11:44 WAP12_MAIN.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN10.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN11.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN2.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN3.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN4.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN5.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN6.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN7.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN8.dbf<BR>-rw-r----- 1 oracle dba 2097160192 Apr 1 11:44 WAP12_MAIN9.dbf<BR>-rw-r----- 1 oracle dba 1073750016 Apr 1 11:44 WAP12_MVIEW.dbf<BR>-rw-r----- 1 oracle dba 1073750016 Mar 24 17:15 WAP12_TEMP1.dbf<BR>.........................<BR><BR><BR><FONT color=red>发现存在文件UNDOTBS2.dbf</FONT></SPAN></FONT></P>

pub!1c 2006-2-12 11:41

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363408 style="FONT-SIZE: 12px"><STRONG>4. mount数据库,检查系统参数</STRONG><BR><BR>bash-2.03$ sqlplus "/ as sysdba"<BR><BR>SQL*Plus: Release 9.2.0.3.0 - Production on 星期四 4月 1 11:46:20 2004<BR><BR>Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.<BR><BR>已连接到空闲例程。<BR><BR>SQL> <BR>SQL> <BR>SQL> startup mount;<BR>ORACLE 例程已经启动。<BR><BR>Total System Global Area 4364148184 bytes<BR>Fixed Size 736728 bytes<BR>Variable Size 1845493760 bytes<BR>Database Buffers 2516582400 bytes<BR>Redo Buffers 1335296 bytes<BR>数据库装载完毕。<BR>SQL> select name from v$datafile;<BR><BR>NAME<BR>--------------------------------------------------------------------------------<BR>/u01/oradata/gzhs/system01.dbf<BR>/u01/oradata/gzhs/cwmlite01.dbf<BR>/u01/oradata/gzhs/drsys01.dbf<BR>/u01/oradata/gzhs/example01.dbf<BR>/u01/oradata/gzhs/indx01.dbf<BR>/u01/oradata/gzhs/odm01.dbf<BR>/u01/oradata/gzhs/tools01.dbf<BR>/u01/oradata/gzhs/users01.dbf<BR>/u01/oradata/gzhs/xdb01.dbf<BR>.........................<BR><FONT color=red>/u01/oradata/gzhs/UNDOTBS2.dbf</FONT><BR><BR>已选择23行。<BR><BR>SQL> <BR>SQL> show parameter undo<BR><BR>NAME TYPE VALUE<BR>------------------------------------ ----------- ------------------------------<BR>undo_management string AUTO<BR>undo_retention integer 10800<BR>undo_suppress_errors boolean FALSE<BR><FONT color=red>undo_tablespace string UNDOTBS1</FONT><BR>SQL> show parameter spfile<BR><BR>NAME TYPE VALUE<BR>------------------------------------ ----------- ------------------------------<BR>spfile string<BR><BR><FONT color=red>发现系统没有使用spfile,而初始化参数设置的undo表空间为UNDOTBS1</FONT></SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2><BR></FONT></P>

pub!1c 2006-2-12 11:43

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363411 style="FONT-SIZE: 12px"><STRONG>5. 检查参数文件<BR></STRONG><BR>bash-2.03$ cd $ORACLE_HOME/dbs<BR>bash-2.03$ ls<BR>init.ora initgzhs.ora initgzhs.ora.old orapwgzhs<BR>initdw.ora initgzhs.ora.hurray lkGZHS snapcf_gzhs.f<BR>bash-2.03$ vi initgzhs.ora<BR>"initgzhs.ora" [Incomplete last line] 105 lines, 3087 characters <BR>##############################################################################<BR># Copyright (c) 1991, 2001, 2002 by Oracle Corporation<BR>##############################################################################<BR><BR>###########################################<BR># Archive<BR>###########################################<BR>log_archive_dest_1='LOCATION=/u06/oradata/gzhs/arch'<BR>log_archive_format=%t_%s.dbf<BR>log_archive_start=true<BR><BR>###########################################<BR># Cache and I/O<BR>###########################################<BR>db_block_size=8192<BR>db_cache_size=2516582400<BR>db_file_multiblock_read_count=16<BR><BR>###########################################<BR># Cursors and Library Cache<BR>###########################################<BR>open_cursors=300<BR><BR>......................<BR><BR><BR>###########################################<BR># System Managed Undo and Rollback Segments<BR>###########################################<BR>undo_management=AUTO<BR>undo_retention=10800<BR><FONT color=red>undo_tablespace=UNDOTBS1</FONT><BR><BR>:q!<BR><BR><FONT color=red>这个设置是极其可疑的.</FONT> <BR>怀疑参数文件和实际数据库设置不符.</SPAN></FONT></P>

pub!1c 2006-2-12 11:43

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java id=text1363414 style="FONT-SIZE: 12px" script><STRONG>6. 再次检查alert文件</STRONG><BR>查找对于UNDO表空间的操作<BR><BR>第一部分,创建数据库时的信息:<BR><BR>Sat Feb 7 20:30:12 2004<BR>CREATE DATABASE gzhs<BR>MAXINSTANCES 1<BR>MAXLOGHISTORY 1<BR>MAXLOGFILES 5<BR>MAXLOGMEMBERS 3<BR>MAXDATAFILES 100<BR>DATAFILE '/u01/oradata/gzhs/system01.dbf' SIZE 500M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED<BR>EXTENT MANAGEMENT LOCAL<BR>DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/oradata/gzhs/temp01.dbf' SIZE 1000M REUSE AUTOEXTEND ON NEXT 250M MAXSIZE UNLIMITED<BR><FONT color=red>UNDO TABLESPACE "UNDOTBS1" DATAFILE '/u01/oradata/gzhs/undotbs01.dbf' SIZE 1000M REUSE AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED</FONT><BR>CHARACTER SET ZHS16GBK<BR>NATIONAL CHARACTER SET AL16UTF16<BR>LOGFILE GROUP 1 ('/u01/oradata/gzhs/redo01.log') SIZE 256M,<BR>GROUP 2 ('/u01/oradata/gzhs/redo02.log') SIZE 256M,<BR>GROUP 3 ('/u01/oradata/gzhs/redo03.log') SIZE 256M<BR><BR>注意,这也是OCP教材上提到的两种创建UNDO表空间的方式之一</SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2></FONT></P><FONT face="verdana, arial, helvetica" size=2>
<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363420 style="FONT-SIZE: 12px">第二部分,发现创建UNDOTBS2的记录信息:<BR><BR>Wed Mar 24 20:20:58 2004<BR><FONT color=red>/* OracleOEM */ CREATE UNDO TABLESPACE "UNDOTBS2" DATAFILE '/u01/oradata/gzhs/UNDOTBS2.dbf' SIZE 1024M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED</FONT><BR>Wed Mar 24 20:22:37 2004<BR>Created Undo Segment _SYSSMU11$<BR>Created Undo Segment _SYSSMU12$<BR>Created Undo Segment _SYSSMU13$<BR>Created Undo Segment _SYSSMU14$<BR>Created Undo Segment _SYSSMU15$<BR>Created Undo Segment _SYSSMU16$<BR>Created Undo Segment _SYSSMU17$<BR>Created Undo Segment _SYSSMU18$<BR>Created Undo Segment _SYSSMU19$<BR>Created Undo Segment _SYSSMU20$<BR>Completed: /* OracleOEM */ CREATE UNDO TABLESPACE "UNDOTBS2"<BR>Wed Mar 24 20:24:25 2004<BR>Undo Segment 11 Onlined<BR>Undo Segment 12 Onlined<BR>Undo Segment 13 Onlined<BR>Undo Segment 14 Onlined<BR>Undo Segment 15 Onlined<BR>Undo Segment 16 Onlined<BR>Undo Segment 17 Onlined<BR>Undo Segment 18 Onlined<BR>Undo Segment 19 Onlined<BR>Undo Segment 20 Onlined<BR>Successfully onlined Undo Tablespace 15.<BR>Undo Segment 1 Offlined<BR>Undo Segment 2 Offlined<BR>Undo Segment 3 Offlined<BR>Undo Segment 4 Offlined<BR>Undo Segment 5 Offlined<BR>Undo Segment 6 Offlined<BR>Undo Segment 7 Offlined<BR>Undo Segment 8 Offlined<BR>Undo Segment 9 Offlined<BR>Undo Segment 10 Offlined<BR>Undo Tablespace 1 successfully switched out.<BR><BR>第三部分,新的UNDO表空间被应用<BR><BR>Wed Mar 24 20:24:25 2004<BR><FONT color=red>ALTER SYSTEM SET undo_tablespace='UNDOTBS2' SCOPE=MEMORY;</FONT><BR><BR>我们发现问题就在这里,创建了新的UNDO表空间以后,因为使用的是pfile文件,修改的只对当前实例生效,操作人员忘记了修改pfile文件.<BR><BR>如果使用spfile,缺省的修改范围是both,会同时修改spfile文件,就可以避免以上问题的出现.<BR><BR>第四部分,删除了UNDOTBS1的信息<BR><BR>Wed Mar 24 20:25:01 2004<BR><FONT color=red>/* OracleOEM */ DROP TABLESPACE "UNDOTBS1" INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS</FONT><BR>Wed Mar 24 20:25:03 2004<BR>Deleted file /u01/oradata/gzhs/undotbs01.dbf<BR>Completed: /* OracleOEM */ DROP TABLESPACE "UNDOTBS1" INCLUDI<BR><BR><BR>这样再次重新启动数据库的时候,问题出现了,pfile中定义的UNDOTBS1找不到了,而且操作实在很久以前,没人能回忆起来,甚至无法得知是什么人的操作。</SPAN></FONT></P>
<P><BR></P></FONT>

pub!1c 2006-2-12 11:44

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1363426 style="FONT-SIZE: 12px"><STRONG>7. 更改pfile,启动数据库<BR></STRONG><BR>修改undo表空间<BR><BR>###########################################<BR># System Managed Undo and Rollback Segments<BR>###########################################<BR>undo_management=AUTO<BR>undo_retention=10800<BR>undo_tablespace=UNDOTBS2<BR><BR>....<BR><BR>bash-2.03$ sqlplus "/ as sysdba"<BR><BR>SQL*Plus: Release 9.2.0.3.0 - Production on 星期四 4月 1 11:55:11 2004<BR><BR>Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.<BR><BR><BR>连接到: <BR>Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production<BR>With the Partitioning, OLAP and Oracle Data Mining options<BR>JServer Release 9.2.0.3.0 - Production<BR><BR>SQL> select * from v$version;<BR><BR>BANNER<BR>----------------------------------------------------------------<BR>Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production<BR>PL/SQL Release 9.2.0.3.0 - Production<BR>CORE 9.2.0.3.0 Production<BR>TNS for Solaris: Version 9.2.0.3.0 - Production<BR>NLSRTL Version 9.2.0.3.0 - Production<BR><BR>SQL> exit<BR>从Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production<BR>With the Partitioning, OLAP and Oracle Data Mining options<BR>JServer Release 9.2.0.3.0 - Production中断开<BR>bash-2.03$<BR><BR><BR>在这里我们可以看到,使用spfile可以免去手工修改pfile文件的麻烦,减少了犯错的可能。<BR><BR>既然Oracle9i给我们提供了这个新特性,就值得我们学习使用它.</SPAN></FONT></P>

页: [1]
© 1999-2008 EvilOctal Security Team