Oracle运维笔记之IMPDP导入数据报错ORA-00943

简介: Oracle运维笔记之IMPDP导入数据报错ORA-00943

在做impdp导入表数据时,出现了ORA-00943:cluster does not exist的错误,通常在导入数据报错都是表已存在、用户名或表空间不存在等问题,这个错误很奇怪,之前从来没有遇到过。
图片.png
在MOS上搜索时发现了文档ORA-943 When Importing Clusters (Doc ID 1005258.6),这个错误ORACLE是这样解释的:
图片.png
简单来说就是如果导入的表是聚簇表,而目标端预先创建的表不是聚簇表的话,那么在导入时表定义检查就会失败,报错ORA-00943: cluster does not exist。
解决方案就是,创建聚簇再导入表数据。
接下来就按照解决方案来处理
1.查看表的聚簇,CLUSTER_EIS_STUDIES

SQL> select owner,table_name,cluster_name from dba_tables where table_name='EISREPORTS';
OWNER TABLE_NAME CLUSTER_NAME
------------------------------ ------------------------------ ---------------------------
RADINFO EISREPORTS CLUSTER_EIS_STUDIES

2.获取聚簇的创建语句

select dbms_metadata.get_ddl('CLUSTER','CLUSTER_EIS_STUDIES','RADINFO') from dual;

3.在目标库上创建聚簇

CREATE CLUSTER RADINFO.CLUSTER_EIS_STUDIES (
PATIENTSINDEX NUMBER(10,0) )
SIZE 2048

聚簇已经创建完毕,再次impdp导入数据,却发现仍然报错,但这次的错误和之前不同,ORA-02032: clustered tables cannot be used before the cluster index is built,
从字面理解来说就是聚簇索引创建前无法使用聚簇表。
图片.png
那么接下来就要从源端查询聚簇索引信息,之后在目标端创建了。
1.在源端查询聚簇索引信息:

select index_owner,index_name,table_name,column_name from dba_ind_columns where table_name='CLUSTER_EIS_STUDIES'
INDEX_OWNER INDEX_NAME TABLE_NAME COLUMN_NAME
-------------------------- ------------------------------ -------------------------- --------------------------
RADINFO IX_CLUSTER_EIS_STUDIES CLUSTER_EIS_STUDIES PATIENTSINDEX

2.在目标端创建聚簇索引:

create index radinfo.IX_CLUSTER_EIS_STUDIES on cluster CLUSTER_EIS_STUDIES;

再次impdp导入数据,这次终于执行成功。

相关文章
|
11月前
|
Oracle 关系型数据库 数据库
数据库数据恢复—服务器异常断电导致Oracle数据库报错的数据恢复案例
Oracle数据库故障: 某公司一台服务器上部署Oracle数据库。服务器意外断电导致数据库报错,报错内容为“system01.dbf需要更多的恢复来保持一致性”。该Oracle数据库没有备份,仅有一些断断续续的归档日志。 Oracle数据库恢复流程: 1、检测数据库故障情况; 2、尝试挂起并修复数据库; 3、解析数据库文件; 4、导出并验证恢复的数据库文件。
|
运维 监控 中间件
Linux运维笔记 - 如何使用WGCLOUD监控交换机的流量
WGCLOUD是一款开源免费的通用主机监控工具,安装使用都非常简单,它可以监控主机、服务器的cpu、内存、磁盘、流量等数据,也可以监控数据库、中间件、网络设备
|
Oracle 关系型数据库 MySQL
【YashanDB知识库】oracle dblink varchar类型查询报错记录
这篇文章主要介绍了 Oracle DBLINK 查询崖山 DB 报错的相关内容,包括 ODBC 安装配置、数据源配置、dblink 环境配置、问题原因分析及规避方法。问题原因是 dblink 连接其他数据库时 varchar 类型转换导致的,还介绍了 long 类型限制、char 等类型区别,规避方法是修改参数 MAX_STRING_SIZE 支持 32K。
|
Oracle 关系型数据库 数据库
【YashanDB知识库】oracle dblink varchar类型查询报错记录
在使用Oracle DBLink查询VARCHAR类型数据时,可能会遇到多种报错。通过了解常见错误原因,采取合适的解决方法,可以有效避免和处理这些错误。希望本文提供的分析和示例能帮助你在实际工作中更好地处理DBLink查询问题。
506 10
|
运维 Java 关系型数据库
【Java笔记+踩坑】SpringBoot基础2——运维实用
SpringBoot程序的打包与运行、临时配置、多环境配置、日志
【Java笔记+踩坑】SpringBoot基础2——运维实用
|
SQL 运维 Oracle
入门级Oracle 11g日常运维命令总结
入门级Oracle 11g日常运维命令总结
1106 1
|
运维 Oracle 前端开发
Oracle 11g RAC集群日常运维命令总结
Oracle 11g RAC集群日常运维命令总结
773 2
|
数据采集 运维 监控
运维笔记:流编辑器sed命令用法解析
运维笔记:流编辑器sed命令用法解析
859 5
|
应用服务中间件 API 网络安全
运维笔记:宿主机转发实现多容器复用CA证书
运维笔记:宿主机转发实现多容器复用CA证书
383 4
|
运维 安全 网络安全
运维笔记:基于阿里云跨地域服务器通信
运维笔记:基于阿里云跨地域服务器通信
1601 1

推荐镜像

更多