一、说明
1、EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用;
2、expdp和impdp使用格式:
expdp oracle用户名/密码@数据库实例 schemas=用户名 dumpfile=导入文件名.dmp DIRECTORY=目录名;
impdporacle用户名/密码@数据库实例 schemas=用户名 dumpfile=导入文件名.dmp DIRECTORY=目录名;
3、创建逻辑目录,该命令不会在操作系统创建真正的目录,请先创建真正的目录,最好在oracle数据中通过system或者管理员用户创建逻辑目录
1)、创建逻辑目录:create directory dump_dir as 'C:\Users\lenovo\Desktop\export';
2)、查询是否生成:select * from dba_directories;
二、用expdp导出数据
1)、 在导出oracle的机器上创建逻辑目录后(见上文),以管理员用户登录window系统,然后cmd进入命令行;
2)、执行如下语句(上面已经对于语句进行了说明)
expdp system/123456@orcl schemas=system dumpfile=expdp.dmp directory=dump_dir
看到上面的成功完成表示执行成功,执行此命令会导出当前用户下所有的文件(下图中所列),例如:用户名信息和密码、存储过程名称和内容,表的结构、数据、索引,序列等,执行成功后会在window创建的逻辑目录下,生成expdp.dmp(命令语句中自己命名的)
三、用impdp导入数据
1)、 在导入oracle的机器上创建逻辑目录后(见上文),将上面导出的dmp文件放在新建的文件夹中,以管理员用户登录window系统,然后cmd进入命令行;
2)、执行如下语句(上面已经对于语句进行了说明),他会根据文件是否存在来处理,文件存在就跳过,文件不存在就创建,
impdp system/sys123456@ORCL directory=dump_dir dumpfile=expdp.dmp schemas=system
有时候会报错,有可能是因为权限不足的原因,需要赋予足够的用户权限:
GRANT READ,WRITE ON DIRECTORY 你的DIRECTORY名称 to 你的用户;
grant connect,resource,dba to 用户名;
然后登陆plsql就可以看到数据已经导入成功;