我的oracle9.2数据库安装在IBM P55a 小型机上(两台做的HA),安装的AIX4操作系统,在网络中一台操作系统为window2003的PC服务器上,使用exp命令导出用户时,所有表中有BLOB和CLOB的表都会报块(******)找不到的错误。
为什么会出这种错误,怎么解决呢?
为什么会出这种错误,怎么解决呢?
解决方案 »
- 跪求指点存储过程! 在线等!!100分跪求
- ORACLE 9i 一台机器安装Server 同时开两个数据库在C盘D盘 问题,能用高级复制功能实现C盘的数据库复制到D盘的数据库吗?
- 游标相关简单的问题
- 怎么样让select查询出来的记录按降序排列?
- 装KVW3000后,报连接错误:ORA-12571:TNS:包写入程序失败?
- 关于webservice访问oracle存储过程问题
- 关于数据库导入的初级问题
- 如何 使用 用PowerDesign 生成文档 ?
- ORA-03130: 要求读取下一段的缓冲区
- Pro*c 中where条件后面不能接数组变量?? 怎么varchar类型的也不行啊?
- 下面是一句老版的sql语句 ,问问大虾们可不可以优化而提高执行速度?
- Oracle中有什么命令可以显示对象类型的层次结构
http://www.itpub.net/thread-528089-1-1.html
For tables containing LONG, LOB, BFILE, REF, ROWID, UROWID, or DATE
columns, rows are inserted individually. The size of the buffer must be large enough
to contain the entire row, except for LOB and LONG columns. If the buffer cannot
hold the longest row in a table, Import attempts to allocate a larger buffer.
问题描述:本地Oracle客户端版本为9.2.0.1,而数据库服务器版本为9.2.0.5。在本地利用exp将数据从服务器导出时,在遇到有大对象(BLOB, CLOB)的表时,出现错误:EXP-00003。经过确认,发现时Oracle的Bug。解决方法如下:
方法一:将客户端升级版本升级为9.2.0.5。
方法二:
步骤1 修改$ORACLE_HOME/rdbms/admin/catexp.sql文件(在修改之前,请务必对该文件做备份,以防失误),
将“UNION ALL select * from sys.exu9tneb”加入到视图exu9tne定义的最后一行,如下:
CREATE OR REPLACE VIEW exu9tne (
tsno, fileno, blockno, length) AS
SELECT ts#, segfile#, segblock#, length
FROM sys.uet$
WHERE ext# = 1
UNION ALL
SELECT * from sys.exu9tneb
/ 步骤2 以sys帐号执行该脚本。
这样,即可以用低版本的客户端导出版本为9.2.0.5的数据库服务器上的数据。
以上两种方法,相比之下,建议采用第二种,因为这样可以不用升级每个客户端,从而减少了麻烦。但是采用第二种方法时,一定要对注意catexp.sql进行备份。