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导入数据,这次终于执行成功。

相关文章
|
5月前
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错之读取Oracle数据库时遇到找不到驱动,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错之读取Oracle数据库时遇到找不到驱动,是什么原因
|
5月前
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错之报错:Caused by: oracle.jdbc.OracleDatabaseException: ORA-01291如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
2月前
|
运维 Oracle 前端开发
Oracle 11g RAC集群日常运维命令总结
Oracle 11g RAC集群日常运维命令总结
57 2
|
2月前
|
SQL 运维 Oracle
入门级Oracle 11g日常运维命令总结
入门级Oracle 11g日常运维命令总结
25 1
|
2月前
|
SQL Oracle 关系型数据库
[oracle]使用impdp导入数据时卡在视图
[oracle]使用impdp导入数据时卡在视图
145 2
|
3月前
|
分布式计算 运维 DataWorks
MaxCompute操作报错合集之用户已在DataWorks项目中,并有项目的开发和运维权限,下载数据时遇到报错,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
3月前
|
SQL Oracle 关系型数据库
使用Oracle IMP导入数据
使用Oracle IMP导入数据
|
4月前
|
SQL 运维 分布式计算
DataWorks操作报错合集之购买了独享的调度资源组,在运维界面批量修改调度资源组报错了,而且也没有资源组显示,是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
28 0
|
4月前
|
Oracle 关系型数据库 数据库
oracle基本操作笔记分享
oracle基本操作笔记分享
34 0
|
5月前
|
消息中间件 Oracle 关系型数据库
实时计算 Flink版操作报错之同步Oracle时出现主题为空的报错该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。

热门文章

最新文章

推荐镜像

更多
下一篇
无影云桌面