暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle9i新特点-在spfile中设置Event事件

原创 eygle 2005-10-10
681

本文发表于itpub技术丛书《Oracle数据库DBA专题技术精粹》,未经许可,严禁转载本文.


 



七. 设置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 bytes
Fixed Size 451436 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL> show parameter event


NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
event string 10841 trace name context forever

 

顺便提一句,10841事件是用于解决Oracle9i中JDBC Thin Driver问题的一个方法,如果你的alert.log文件中出现以下错误提示:









Wed Jan 7 17:17:08 2004
Errors 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 2004
Errors 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 2004
Errors 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 2004
Errors 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 2004
Errors 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 2004
Errors 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 2004
Errors 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 2004
Errors 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 2004
Errors 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:\\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>

 

 



九. 关于920的PFILE


在$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>


 



<<上一页 下一页>>


 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论