[oracle] 服务器导入dmp文件

本文详细介绍了Oracle数据库中使用expdp和impdp命令进行数据导出与导入的操作方法。包括如何指定导出的表、表结构或特定条件的数据,如何解决常见的错误提示,并提供了跨版本和跨用户导出导入的具体案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载自https://note.youdao.com/share/?id=ef2222fd7ac9b299077ba88567d5d806&type=note#/

expdp导出命令(如果从高版本导入到低版本要指定低版本的版本号)

TABLES=accesslog,accesslogitem(指定哪些表) content=metadata_only(只导表结构) query='WHERE deptno=20'(根据查询条件,要与tables连用) FULL=y(导整个数据库)

expdp wacos/oss dumpfile=test.dmp version=10.2.0.3.0

导出的test.dmp文件要用find命令查找一下。因为你没有指定directory

如果要指定directory的话请参考下面的方法

Sql代码

--创建dump文件目录

create directory dump_test as 'D:\test\dump'

--授权读写权限给你要操作的用户

grant read, write on directory dump_test to

username

 

impdp导入命令(如果是不同的用户之间导入导出,应该要指定导入用户和导出用户)

impdp cms/cms dumpfile=test.dmp REMAP_SCHEMA=wacos:cms EXCLUDE=USER(如果出错,这个属性不要)

如果出现这个问题 unable to open dump file "/opt/oracle/db01/app/oracle/admin/ORCL/dpdump/test.dmp" for read

这是因为directory路径下面没有test.dmp的原因

 

导出某个用户数据

expdp cms_0827/oss dumpfile=cms_0827.dmp schemas=cms_0827 logfile=cms_0827.log

cms_0827.dmp和cms_0827.log会放到某个逻辑目录下

find /opt/oracle -name cms_0827.log 通过该命令查找

文件名后缀必须是dmp

导入用户数据

impdp cms_0827/oss dumpfile=cms_0827.dmp schemas=cms_0827 logfile=cms_0827.log

关于用imp命令导入数据库的原因是由于有外键因素等原因存在。解决方案如下

===========================================================================================================案例=========================================

在172.19.65.32的cms_0827用户下导出WS_MERGEDMEDIA的表结构及数据

expdp cms_0827/oss tables=WS_MERGEDMEDIA dumpfile=temp_patrick.dump logfile=temp_patrick.log version=10.2.0.3.0

在10.50.13.68的sop用户下导入该dump文件

impdp sop/sop dumpfile=temp_patrick.dump remap_schema=cms_0827:sop logfile=temp_patrick.log

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值