您的位置:首页技术文章
文章详情页

Oracle9i新特点:SPFILE的使用--How to set events with spfile and etc

【字号: 日期:2023-11-14 14:15:02浏览:33作者:猪猪
Oracle9i新特点:SPFILE的使用--How to set events with spfile and etc. Last Updated: Wednesday, 2004-10-27 0:39 Eygle ; 本文发表于itpub技术丛书《Oracle数据库DBA专题技术精粹》,未经许可,严禁转载本文. 原文出处:http://www.eygle.com/faq/Oracle9i.New.Feature.Spfile.05.htm七. 设置Events事件Events事件是Oracle的重要诊断工具及问题解决办法,很多时候需要通过Events设置来屏蔽或者更改Oracle的行为,下面我们来看一下怎样修改spfile,增加Events事件设置:SQL> alter system set event='10841 trace name context forever' scope=spfile;System altered.SQL> startup force;ORACLE instance started.Total System Global Area 101782380 bytesFixed Size 451436 bytesVariable Size 75497472 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytesDatabase mounted.Database opened.SQL> show parameter eventNAME TYPE VALUE------------------------------------ ----------- ------------------------------event string 10841 trace name context forever 顺便提一句,10841事件是用于解决Oracle9i中JDBC Thin Driver问题的一个方法,假如你的alert.log文件中出现以下错误提示: Wed Jan 7 17:17:08 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1775.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:17:18 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1777.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:17:24 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1783.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:17:31 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1785.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:17:39 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1777.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:17:45 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1783.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:17:52 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1787.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:18:11 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1791.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], []Wed Jan 7 17:18:19 2004Errors in file /opt/oracle/admin/phsdb/udump/phsdb_ora_1785.trc:ORA-00600: internal error code, arguments: [ttcgcshnd-1], [0], [], [], [], [], [], [] 那么,很不幸,你很可能是碰到了bug: 1725012通过设置以上事件,可以屏蔽和解决这个ORA-00600错误.具体你可以参考Metalink相关文档。 八. 导出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:oracleadmineyglenbdump'*.compatible='9.2.0.0.0'*.control_files='e:oracleoradataeyglencontrol01.ctl','e:oracleoradataeyglencontrol02.ctl','e:oracleoradataeyglencontrol03.ctl'*.core_dump_dest='e:oracleadmineyglencdump'*.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:oracleadmineyglenudump'然后我们可以使用这个pfile,或者手动修改其中的参数以启动数据库。我们修改这个pfile,增加一行*.log_archive_start=true使用这个PFILE启动数据库SQL> startup pfile='e:initeyglen.ora'ORACLE 例程已经启动。Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytes数据库装载完毕。数据库已经打开。SQL> show parameter log_archive_startNAME TYPE------------------------------------ ----------------------VALUE------------------------------log_archive_start booleanTRUESQL> 然后我们可以使用新的PFILE创建SPFILESQL> create spfile from pfile='e:initeyglen.ora'; 文件已创建。 重新启动数据库,新的SPFILE生效。SQL> startupORACLE 例程已经启动。Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytes数据库装载完毕。数据库已经打开。SQL> show parameter spfileNAME TYPE------------------------------------ ----------------------VALUE------------------------------spfile string%ORACLE_HOME%DATABASE PFILE%ORACLE_SID%.ORASQL> show parameter log_archive_startNAME TYPE------------------------------------ ----------------------VALUE------------------------------log_archive_start booleanTRUESQL> 九. 关于920的PFILE在$ORACLE_BASEadmindb_name pfile下,你很可能可以看到一个类似这样[init.ora.192003215317]名字的文件,这就是初始化参数文件,只是跟上了时间戳。对于Oracle920,缺省的就使用spfile启动,但是这个spfile不是凭空而来,而是根据这个文件创建而来,你可以去掉这个长后缀,就是标准的pfile文件了。 假如手动创建数据库,可以看到以下的过程:SQL> create spfile='e:oracleora10Gdatabase pfilesunny.ora' FROM pfile='E:oracleadmin unny criptsinit.ora' 文件已创建。假如你想要使用pfile启动数据库,那么你可以把spfile改名,NT缺省位于$ORACLE_HOMEdatabase下,这样Oracle就不会使用这个spfile了 。你使用create pfile from spfile命令创建的pfile,也应该在这个目录下 以下是一个完整的例子:E:OracleOra9iR2database>dir *.ora驱动器 E 中的卷是 Doc卷的序列号是 980C-8EFFE:OracleOra9iR2database 的目录2003-02-26 10:49 1,028 INITeyglen.ORA2003-02-10 14:35 2,048 PWDeyglen.ORA2003-02-26 11:05 3,584 SPFILEEYGLEN.ORA3 个文件 6,660 字节0 个目录 937,455,616 可用字节E:OracleOra9iR2database>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - ProdUCtion on 星期三 2月 26 11:16:29 2003Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> connect / as sysdba已连接到空闲例程。SQL> startupORACLE 例程已经启动。Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytes数据库装载完毕。数据库已经打开。SQL> show parameter spfileNAME TYPE------------------------------------ ----------------------VALUE------------------------------spfile string%ORACLE_HOME%DATABASE PFILE%ORACLE_SID%.ORASQL> shutdown immediate数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> host rename SPFILEEYGLEN.ORA SPFILEEYGLEN.ORA.bakSQL> host dir *.ora驱动器 E 中的卷是 Doc卷的序列号是 980C-8EFFE:OracleOra9iR2database 的目录2003-02-26 10:49 1,028 INITeyglen.ORA2003-02-10 14:35 2,048 PWDeyglen.ORA2 个文件 3,076 字节0 个目录 937,435,136 可用字节SQL> startupORACLE 例程已经启动。 Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytes数据库装载完毕。数据库已经打开。SQL> show parameter spfileNAME TYPE------------------------------------ ----------------------VALUE------------------------------spfile stringSQL>SQL> host rename SPFILEEYGLEN.ORA.bak SPFILEEYGLEN.ORASQL> shutdown immediate数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startupORACLE 例程已经启动。Total System Global Area 135338868 bytesFixed Size 453492 bytesVariable Size 109051904 bytesDatabase Buffers 25165824 bytesRedo Buffers 667648 bytes数据库装载完毕。数据库已经打开。SQL> show parameter spfileNAME TYPE------------------------------------ ----------------------VALUE------------------------------spfile string%ORACLE_HOME%DATABASE PFILE%ORACLE_SID%.ORASQL><<上一页 下一页>> 本文作者:eygle,Oracle技术关注者,来自中国最大的Oracle技术论坛itpub.www.eygle.com是作者的个人站点.你可通过Guoqiang.Gai@gmail.com来联系作者.欢迎技术探讨交流以及链接交换.原文出处:http://www.eygle.com/faq/Oracle9i.New.Feature.Spfile.05.htm
标签: Oracle 数据库