Oracle 11g 导出数据报 “ORA-01455: 转换列溢出整数数据类型”的问题
2014-11-13 17:49
543 查看
最近发现云服务器上的Oracle 11g在导出时报错,如下:
...
. 正在导出后期表活动
. 正在导出实体化视图
. 正在导出快照日志
EXP-00008: 遇到 ORACLE 错误 1455
ORA-01455: 转换列溢出整数数据类型
EXP-00000: 导出终止失败
从网上搜了半天,有很多种说法:
1. 版本问题,说10g的导出11g的就有这个问题,但是我的客户端和服务器采用的是相同的版本,所以不存在版本问题。有的还说是32位和64位的问题,我的Oracle是32位,客户端也是32位,同一台设备上,所以应该是和版本无关。
2. Exp加参数,很多人提出加各种参数,包括:
Direct=y
INDEXES=n STATISTICS=none
不管是单独还是联合使用,都无效还是报错。
3、数据问题,我干脆不导出数据,只导出数据库结构,仍然报错,看来与数据无关。
静下来考虑了半天,看到是快照日志出错,但是我的数据库中没有建立快照啊?后来反应过来了,虽然没有快照,但是建立有物化视图(MATERIALIZED VIEW),会不会是物化视图的问题?
删除物化视图后导出,一切正常,说明还是物化视图导出导致的错误,真是个大坑啊,这些导出文件在重新导入时都要报错,备份工作算是白做了。幸好发现得早!
2015.3.18
今天某用户的数据导出又开始报上述错误了,检查了一下,发现某个物化视图采用了提交更新模式:
CREATE MATERIALIZED VIEW V_INBED_BILL_CHECK_TOTAL
REFRESH COMPLETE ON COMMIT
AS ...
由于必须开启日志:
--建立物化视图日志,将涉及的字段序列化
CREATE MATERIALIZED VIEW LOG ON T_CHECK_BILL WITH ROWID,
SEQUENCE(ORG_ID,BATCH_ID,SI_TYPE_ID,HOSP_ID,CHECK_RULE_ID,INBED_BILL_ID,PRES_BILL_ID,PSN_ID,CHECK_ITEM_AMT,CHECK_ITEM_CNT,CHECK_DEDUC_AMT)
INCLUDING NEW VALUES;
今天重新建立物化视图,全部采用手工更新模式,所以重建物化视图为:
CREATE MATERIALIZED VIEW V_INBED_BILL_CHECK_TOTAL
REFRESH ON DEMAND
AS ...
在导出数据时,删除物化视图后导出仍然报错,发现没有执行原来的删除命令:
DROP MATERIALIZED VIEW LOG ON T_CHECK_BILL;
执行该命令后,报错消失。
所以正确的理解应该是:
建立物化视图过程中,如果开启了物化视图日志,导出时将会报”ORA-01455”的错误,导致导出失败。删除物化视图日志可以解决该问题。
...
. 正在导出后期表活动
. 正在导出实体化视图
. 正在导出快照日志
EXP-00008: 遇到 ORACLE 错误 1455
ORA-01455: 转换列溢出整数数据类型
EXP-00000: 导出终止失败
从网上搜了半天,有很多种说法:
1. 版本问题,说10g的导出11g的就有这个问题,但是我的客户端和服务器采用的是相同的版本,所以不存在版本问题。有的还说是32位和64位的问题,我的Oracle是32位,客户端也是32位,同一台设备上,所以应该是和版本无关。
2. Exp加参数,很多人提出加各种参数,包括:
Direct=y
INDEXES=n STATISTICS=none
不管是单独还是联合使用,都无效还是报错。
3、数据问题,我干脆不导出数据,只导出数据库结构,仍然报错,看来与数据无关。
静下来考虑了半天,看到是快照日志出错,但是我的数据库中没有建立快照啊?后来反应过来了,虽然没有快照,但是建立有物化视图(MATERIALIZED VIEW),会不会是物化视图的问题?
删除物化视图后导出,一切正常,说明还是物化视图导出导致的错误,真是个大坑啊,这些导出文件在重新导入时都要报错,备份工作算是白做了。幸好发现得早!
2015.3.18
今天某用户的数据导出又开始报上述错误了,检查了一下,发现某个物化视图采用了提交更新模式:
CREATE MATERIALIZED VIEW V_INBED_BILL_CHECK_TOTAL
REFRESH COMPLETE ON COMMIT
AS ...
由于必须开启日志:
--建立物化视图日志,将涉及的字段序列化
CREATE MATERIALIZED VIEW LOG ON T_CHECK_BILL WITH ROWID,
SEQUENCE(ORG_ID,BATCH_ID,SI_TYPE_ID,HOSP_ID,CHECK_RULE_ID,INBED_BILL_ID,PRES_BILL_ID,PSN_ID,CHECK_ITEM_AMT,CHECK_ITEM_CNT,CHECK_DEDUC_AMT)
INCLUDING NEW VALUES;
今天重新建立物化视图,全部采用手工更新模式,所以重建物化视图为:
CREATE MATERIALIZED VIEW V_INBED_BILL_CHECK_TOTAL
REFRESH ON DEMAND
AS ...
在导出数据时,删除物化视图后导出仍然报错,发现没有执行原来的删除命令:
DROP MATERIALIZED VIEW LOG ON T_CHECK_BILL;
执行该命令后,报错消失。
所以正确的理解应该是:
建立物化视图过程中,如果开启了物化视图日志,导出时将会报”ORA-01455”的错误,导致导出失败。删除物化视图日志可以解决该问题。
相关文章推荐
- Oracle 11g 导出数据报 “ORA-01455: 转换列溢出整数数据类型”的问题
- 关于EXP-00056: 遇到 ORACLE 错误 1455 ORA-01455: 转换列溢出整数数据类型 EXP-00000: 导出终止失败 的问题解决方法整理
- EXP-00056 遇到oracle错误1455 ORA-01455: 转换列溢出整数数据类型
- 【Oracle】ORA-01455: 转换列溢出整数数据类型
- RMAN/EXP ORA-01455: 转换列溢出整数数据类型
- 导出遇到 ORACLE 错误 1455:转换列溢出整数数据类型
- ORA-01455: 转换列溢出整数数据类型
- ORA-01455: 转换列溢出整数数据类型
- 【ORA-01455】转换列溢出整数数据类型
- JAVA中整数类型数据溢出问题研究
- 关于oracle 11g导出数据时 报 ORA 1455错误的处理
- 关于int型整数按逆序存入数组中的问题(也即十进制数和其他类型数据的转换问题)
- Oracle 11g 导入,空数据表无法导出问题。
- Java左右移位操作和数据类型转换时的溢出问题
- Oracle自定义函数解决数据类型转换出错的问题
- Oracle 11G gateway 连接MS Sql Server 字符串转换问题ORA-28562,ORA-02063
- oracle 11g和10g数据导出导入问题
- oracle导出含有Clob大数据字段类型的问题
- 解决速达软件提示将numeric转换为数据类型numeric时发生算术溢出错误问题
- 【ORACLE】 11g 数据库表导出再导入10g 时空表不能导出的问题