暂无图片
分享
seagull
2020-04-24
exp,imp导入导出问题
暂无图片 5M

我在导入导出的时候遇到报错,不确定这个是exp和imp跨版本原因还是字符集不一致原因,麻烦指导一下谢谢。

本地数据库版本11.2.0.7在服务器上使用exp导出表后,
使用客户端12.2.0.1导入12.1.0.2的远端数据库
导出语句:
exp smsexp/smsexp file=/home/oracle/1.dmp tables=tbl_rpt_hmmoaccount
导入语句:
imp smsexp/Smsexp_123@smcreportdb file=C:\zhoutao\exptest\1.dmp

报错内容:
连接到: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Advanced Analytics and Real Applicat
经由常规路径由 EXPORT:V11.01.00 创建的导出文件
已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入
导入服务器使用 AL32UTF8 字符集 (可能的字符集转换)
导出客户机使用 US7ASCII 字符集 (可能的字符集转换)
IMP-00003: 遇到 ORACLE 错误 942
ORA-00942: 表或视图不存在
IMP-00023: 未安装导入视图, 请通知 DBA
IMP-00000: 未成功终止导入

收藏
分享
9条回答
默认
最新
seagull

确定两个库用户和表以及权限都没问题

暂无图片 评论
暂无图片 有用 0
JiekeXu
暂无图片

确定新用户权限没问题吗?
报错就是 表或视图不存在呀!

暂无图片 评论
暂无图片 有用 0
seagull

确定啊,用户名是一样的,表确定是存在的。就是不明白为什么会报ora-00942

本地库:
SQL> select table_name,status from user_tables where table_name =‘TBL_RPT_HMMOACCOUNT’;

TABLE_NAME STATUS


TBL_RPT_HMMOACCOUNT VALID

SQL> show user
USER is “SMSEXP”

远端库:
SQL> show user
USER 为 “SMSEXP”
SQL> l
1* select table_name,status from user_tables where table_name =‘TBL_RPT_HMMOACCOUNT’
SQL> /

TABLE_NAME

STATUS

TBL_RPT_HMMOACCOUNT
VALID

暂无图片 评论
暂无图片 有用 0
Moone

使用和目标端库一致的exp/imp做导出导入试试。

暂无图片 评论
暂无图片 有用 0
peiyang

源端与目标端数据库字符集是一致的嘛

暂无图片 评论
暂无图片 有用 0
seagull

字符集不是一致的,我改用sqlldr的方法导数据了。

暂无图片 评论
暂无图片 有用 0
黄伟波

你用PLSQL,试一下smsexp/Smsexp_123@smcreportdb能不能登录上去,可能你没考虑PDB里面的

暂无图片 评论
暂无图片 有用 0
seagull

smsexp/Smsexp_123@smcreportdb可以登录上去。现场环境是两个数据库分别有两个windows堡垒机,两个数据库网络不通,两个堡垒机网络是通的。数据库版本分别是11.2和12.1,对应堡垒机版本10.2和12.2。

暂无图片 评论
暂无图片 有用 0
seagull
问题已关闭: 问题已经得到解决
暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏