如何将Oracle库中的几张表导入到另外一个库中

分类:计算机 | 数据库 | Oracle | 导入导出 277
更新:2020-03-15 17:16:07
编辑

1 首先打开windows系统下的cmd窗口,最好以管理员权限运行

2 假如我们是要从Oracle的实例orcl中导出几张表的dmp文件,那么我们在打开cmd窗口后,先设置环境变量将Oracle的实例切换到orcl(set ORACLE_SID=orcl),然后再登录上sqlplus

3 登录上sqlplus后,可以使用sql语句: select * from dba_directories 来查看当前实例下有哪些dmp的导出目录可以使用,我们在导出dmp文件时可以选择其中一个来使用

4 退出sqlplus,使用命令expdp来导出我们需要的数据库表dmp文件:

expdp user/user_123$@orcl tables=EV_VERSION,EV_VERSIONFILE directory=DATA_PUMP_DIR
dumpfile=test.dmp logfile=test.log

其中的user/user_123$@orcl分别表示用户名/密码@实例名

5 导出dmp文件后我们就可以将该文件导入到实例orcl中另外一个用户中了。导入命令:

impdp Student/Student directory=DATA_PUMP_DIR table_exists_action=replace dumpfile=test.dmp
logfile=test.log remap_tablespace=GIS:Student remap_schema=EVGIS:Student

其中,remap_tablespace表示改变表所在的表空间,冒号前面的是原来的表空间名,冒号后面的是目标表空间名;remap_schema表示改变表的所属用户,冒号前面的是原来的用户名,冒号后面的是目标用户名。