Oracle11g中用exp不能导出空表,异构平台迁移可以使用expdp、impdp

Oracle11g中,exp默认不能导出空表。用传统的expimp进行异构平台数据库迁移会比较麻烦。不过可以使用expdpimpdp进行迁移。

 

64windows 2003 Oracle11g R2 数据库迁移到64Linux redhat Enterprise 5中,可以使用expdpimpdp进行迁移数据。

如:WindowsA服务器,LinuxB服务器,数据库用户为test,把A服务器的数据迁移到B服务器中

A服务器操作:

1

SQL> create directory expdp_dir as ' D:\mzl\backup ';

SQL> grant read,write on directory expdp_dir to test

 

2、在windows目录创建目录D:\mzl\backup

 

3、在DOS命令窗口导出:

expdp test/test DIRECTORY=expdp_dir DUMPFILE=test.dmp  logfile=testexpdp.log

 

B服务器中操作:

4SQL> create directory impdp_dir as ' /home/oracle/impdp_dir';

   SQL> grant read,write on directory impdp_dir to test

 

 

1、  在系统中需要有/home/oracle/impdp_dir目录,在impdp_dir目录下必须有读写权限

chmod  777 impdp_dir

 

5、用ftpA服务器导出的数据上传到B服务器的/home/oracle/impdp_dir目录中

 

A服务器中配置好B服务器的服务器名,A服务器导入数据

6、在DOS命令窗口导出:

imppdp test/test@B_database DIRECTORY=impdp_dir DUMPFILE=test.dmp  logfile=testimpdp.log

(这里注意大小写,如果test.dmplinux中为大写,必须更改为大写。Linux区分大小写)

 

请使用浏览器的分享功能分享到微信等