« Oracle9i新特点:SPFILE的使用 | Blog首页 | Oracle9i新特点-判断是否使用了spfile »
Oracle9i新特点-在spfile中设置Event事件
链接:https://www.eygle.com/archives/2005/10/oracle9i_feature_spfile05.html
本文发表于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; Total System Global Area 101782380 bytes NAME TYPE VALUE |
顺便提一句,10841事件是用于解决Oracle9i中JDBC Thin Driver问题的一个方法,如果你的alert.log文件中出现以下错误提示:
Wed Jan 7 17:17:08 2004 |
那么,很不幸,你很可能是遇到了bug: 1725012
通过设置以上事件,可以屏蔽和解决这个ORA-00600错误.
具体你可以参考Metalink相关文档。
八. 导出SPFILE文件
SPFILE文件可以导出为文本文件,使用导出、创建过程你可以向SPFILE中添加参数。
SQL> create pfile='e:\initeyglen.ora' from spfile; 文件已创建。 SQL> shutdown immediate |
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' Total System Global Area 135338868 bytes NAME TYPE |
然后我们可以使用新的PFILE创建SPFILE
SQL> create spfile from pfile='e:\initeyglen.ora'; |
重新启动数据库,新的SPFILE生效。
SQL> startup Total System Global Area 135338868 bytes NAME TYPE NAME TYPE |
九. 关于920的PFILE
在$ORACLE_BASE\admin\db_name\spfile下,你很可能可以看到一个类似这样[init.ora.192003215317]名字的文件,这就是初始化
参数文件,只是跟上了时间戳。
对于Oracle920,缺省的就使用spfile启动,但是这个spfile不是凭空而来,而是根据这个文件创建而来,你可以去掉这个长后缀,就是标准的
pfile文件了。
如果手动创建数据库,可以看到以下的过程:
SQL> create spfile='e:\oracle\ora10G\database\spfilesunny.ora' |
文件已创建。
如果你想要使用pfile启动数据库,那么你可以把spfile改名,NT缺省位于$ORACLE_HOME\database下,这样Oracle就不会使用这个spfile了 。
你使用create pfile from spfile命令创建的pfile,也应该在这个目录下
以下是一个完整的例子:
E:\Oracle\Ora9iR2\database 的目录 2003-02-26 10:49 1,028 INITeyglen.ORA 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 Total System Global Area 135338868 bytes NAME TYPE SQL> host dir *.ora E:\Oracle\Ora9iR2\database 的目录 2003-02-26 10:49 1,028 INITeyglen.ORA SQL> startup Total System Global Area 135338868 bytes NAME TYPE SQL> SQL> shutdown immediate Total System Global Area 135338868 bytes NAME TYPE |
历史上的今天...
>> 2016-10-10文章:
>> 2012-10-10文章:
>> 2008-10-10文章:
>> 2006-10-10文章:
By eygle on 2005-10-10 19:59 | Comments (0) | FAQ | 471 |