操作系统都是centos 源服务器名称:A 目标服务器名称:B
在A服务器操作
su - oracle
1、在Linux目录创建目录,用来保存导出的数据文件
mkdir -p /home/oracle/expdp_dir //一台服务器只要创建一次
sqlplus / as sysdba
2、创建逻辑目录,该命令不会在操作系统创建真正的目录
SQL> create directory expdp_dir as '/home/oracle/expdp_dir'; //一台服务器只要创建一次
3、赋予导出的用户权限
SQL> grant read,write on directory expdp_dir to username;//实际情况可以根据用户需要进行授权,有些用户具有DBA权限的就不需要了。
exit
4、导出整个用户数据库
$ expdp username/userpassword@asid DIRECTORY=expdp_dir DUMPFILE=fe.dmp //每次都要操作
在B服务器中操作:
su - oracle
5、在Linux目录创建目录,用来保存导出的数据文件
mkdir -p /home/oracle/impdp_dir //一台服务器只要创建一次
在impdp_dir目录下必须有读写权限
chmod 777 impdp_dir
6、文件传输
可以通过SCP命令直接从A服务器中用oracle用户将数据库文件传到B服务器impdp_dir
或者是通过winscp,先将A服务器上面的文件传到客户电脑,然后在传客户电脑在打开一个WINSCP会话有oracle登录,复制到impdp_dir目录下面
sqlplus / as sysdba
创建逻辑目录,该命令不会在操作系统创建真正的目录
SQL> create directory impdp_dir as '/home/oracle/impdp_dir';//一台服务器只要创建一次
SQL> grant read,write on directory impdp_dir to username;//实际情况可以根据用户需要进行授权,有些用户具有DBA权限的就不需要了。
exit
8、导入整个用户数据库
$ impdp username/password@bsid DIRECTORY=impdp_dir DUMPFILE=fe.dmp
9、将A用户的数据导出给B用户
exp AAAAAA/AAAAAA FILE=/home/oarcle/AAAAAA.dmp
imp BBBBBB/BBBBBB fromuser=AAAAAA touser=BBBBBB FILE=/home/oracle/AAAAAA.dmp