ORA-03232故障
http://www.itpub.net/thread-271012-1-1.htmlORA-03232故障解决一例
ORA-03232故障解决一例:
环境:windows2000 server+oracle817
应用程序运行过程中报错,信息如下:
ORA-03232:无法分配81块(源于表空间3)的区
首先根据错误号查Metalink(125271.1:How to Choose Extent Size for Temporary Tablespace to Prevent ORA-3232):
ORA-03232 unable to allocate an extent of string blocks from tablespace string
Cause: An attempt was made to specify a HASH_MULTIBLOCK_IO_COUNT value that is greater than the
tablespace's NEXT value.
Action: Increase the value of NEXT for the tablespace using ALTER TABLESPACE DEFAULT STORAGE or decrease the value of HASH_ MULTIBLOCK_IO_COUNT.
This parameter determines how many sequential blocks a hash join reads and writes in one IO operation. The maximum value is operating system dependent. It is always less than the maximum I/O size of the operating
system expressed as Oracle blocks (MAX_IO_SIZE / DB_BLOCK_SIZE).
由此我们得知出现这个错误是由于哈希连接时顺序读取或写入的连续数据块大小大于相应表空间的next_extent值而引发的。
我们首先根据错误信息查出错的表空间的信息:
SQL> select * from v$tablespace where ts#=3;
TS# NAME
---------- ------------------------------
3 TEMP
SQL> select initial_extent,next_extent,extent_management from dba_tablespaces where tablespace_name='TEMP';
INITIAL_EXTENT NEXT_EXTENT EXTENT_MANAGEMENT
-------------- ----------- -----------------
262144 65536 DICTIONARY
我们看到出错的表空间为TEMP表空间,其next_extent大小为64K,采用字典管理方式。
再进一步看一下hash连接的情况:
SQL> show parameter hash_multiblock_io_count
NAME TYPE VALUE
------------------------------------ ----------- --------------------
hash_multiblock_io_count integer 0
SQL> show parameter db_block_size
NAME TYPE VALUE
------------------------------------ ----------- -------
db_block_size integer 8192
SQL> select 81*8192 from dual;
81*8192
----------
663552
我们看到HASH_MULTIBLOCK_IO_COUNT采用的还是默认值0(MTS下则为1)。应用程序哈希连接要求连续写入81个数据块,大小为663552bytes,而表空间的next_extent值只为64KB,远小于此值,因此引发该错误。
根据metalink给出的建议,我们可以有两种方法解决此错误:
1、增大表空间的next值,使之等于或大于操作系统的IO大小(不同OS有不同的值)。语法参考:alter tablespace default storage(next 1M);
2、设置HASH_MULTIBLOCK_IO_COUNT为非0的值。
但是我们根据刚才的查询看到,TEMP表空间采用DMT方式。我们知道表空间在DMT方式下对性能有诸多影响,远不如LMT来的灵活。因此在处理该问题的时候我并没有按照metalink给出的两种建议去做,而是把temp表空间删除掉重建,采用本地管理的表空间,并设置uniform size(临时表空间设置uniform size的时候要注意与初始化参数中sort_area_size相结合,一般为sort_area_size的整数倍。我一般喜欢将sort_area_size设为1M,uniform size设为2M)。最终解决办法如下:
SQL> drop tablespace temp including contents;
SQL> create temporary tablespace temp tempfile 'd:\oradata\temp01.dbf' size 300M
extent management local uniform size 2M;
注意:修改了temp表空间的next段大小也可以解决
转载于:https://www.cnblogs.com/yifan268/archive/2010/04/20/1716218.html
ORA-03232故障相关推荐
- Oracle 错误代码详解
Oracle 错误代码详解及解决方式–ORA ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事 ...
- ORACLE 错误解释
随时修正.补充 ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出 ...
- oracle错误代码
oracle错误代码 ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: ...
- shell 获取ora报错信息_频发:故障排除之又见 ORA-4031丨云和恩墨技术通讯
亲爱的读者朋友: 为了及时共享行业案例,通知共性问题,达成共享和提前预防,我们整理和编辑了<云和恩墨技术通讯>,通过对过去一段时间的知识回顾,故障归纳,以期提供有价值的信息供大家参考.同时 ...
- oracle asm ora 15041,ORA-15041,ORA-01274 故障解决实例
上周五去客户处巡检时,发现原来配置的DG备库未与主库同步,特此记录一下 在5月14日13:58出现故障,3398日志无法应用,以下是alert日志 Thu May 14 13:58:01 2015 E ...
- oracle ora 01152,ORA-01152 故障解决
今天在测试库上做RMAN备份恢复实验时,open resetlogs阶段出现了错误: ORA-01152: file 1 was not restored from a sufficiently ol ...
- oracle failovermode,[WK-T]ORACLE 10G 配置故障转移(Failover)
批注:查询结果中如果是NONE,说明这个连接没有使用TAF:如果和客户端tnsnames.ora配置中的相同,说明使用了TAF. 三.Service-Side TAF Service-Side TAF ...
- oracle双机切换 无法挂载,Linux下Oracle RAC一个节点宕机导致共享存储无法挂载的故障排除...
环境:两台HP ML570 Linux AS4.5 Oracle 10g两台Server做了Oracle的RAC,通过SAN Switch连接到HP MSA1000故障现象:因为其中一个Ora 环境: ...
- Oracle Study之--Oracle 11g RAC故障(Failed to create or upgrade OLR)
系统环境: 操作系统: RedHat EL5.5 Cluster: Oracle Grid 11.2.0.1.0 Oracle: Oracle 11g 11.2.0.1.0 故障现象: ...
- sqlnet.ora限制导致双机应用资源启动失败
现场环境: suse9sp3系统下安装oracle9208,为VCS双机.双机配置完成,VCS可以正常启动,刚开始所有资源都可以正常online,但很快server应用资源就会变成offline,从而 ...
最新文章
- 威纶通触摸屏与单片机MODBUS_威纶通案例集锦51-55
- %config InlineBackend.figure_format=svg#矢量图设置
- github上的版本和本地版本冲突的解决方法(Updates were rejected because the tip of your current branch is behind)
- function $(id) {}表示什么函数
- boost::geometry::geometry_id用法的测试程序
- Leetcode461Hamming Distance汉明距离
- 写给测试小白:怎么快速找到bug?怎么写测试用例?
- 一次“背锅”和“解锅”后的反思
- [c++] 关于STL中list类的Remove方法的编译错误C2678
- 函数在某点附近有界,但该点无极限值的例子
- 怎样轻松批量追踪拼多多快递?
- Scrum立会报告+燃尽图(十月二十八日总第十九次)
- 【小小干货】如何寻找综述性论文?
- C语言学习书籍推荐《明解C语言》下载
- C++解决猜大小问题
- titan框架的使用_如何设置和使用Google Titan密钥捆绑包
- V6H--升级3种方式和修改版本号
- 表格内容单/多行展示(一)- 单行/多行显示的方法
- 汇编语言中xor指令_汇编各类指令用法及含义分析 - 全文
- 接口测试流程是怎样的?
热门文章
- 别等管理决策失效,再谈数据处理与“清洗”!
- 5.《程序猿扯淡系列》吃货的理想--健康从吃开始
- Android视频循环录制,Android:使用“连续”自动对焦录制视频
- 入门googletest
- C语言实现简单的RSA加解密算法
- webservice框架 java_Java CXF WebService框架 开发入门案例
- TurboMail邮件系统助联东集团成功集成腾讯RTX
- pdf转换html语言,如何可以把pdf转换成html格式?
- 为了让刚接触的朋友了解并使用 mastercam,本文我就把它出程序的原理过程描述一下
- 盘点几个linux中有趣的游戏 。