假定数据库A为源数据库,数据库B为目标数据库
step1
在数据库A中,导出生成.dmp文件,操作流程如下(以下操作均在系统用户ora11g下执行)1、该操作只需要在第一次使用时执行,A_dump_dir为存储生成dmp文件的路径名,A_usr为该数据库的用户名
sqlplus /nologconn / as sysdba;create directory A_dump_dir as '/home/ora11g/A_dir'grant read,write on directory A_dump to A_user
2、执行expdp命令,其中username、passwd分别为A数据库的用户名、密码,在ora11g用户下执行该命令
expdp username/passwd SCHEMAS=username DIRECTORY=A_dump_dir DUMPFILE=A.dmp LOGFILE=A_dmp.log
step2
将dmp文件传到目标数据库B上scp A.dmp ora11g@B_ip:/home/ora11g/B_dir
B_ip为数据库B的访问地址,在操作前需要在B数据库中建立路径‘/home/ora11g/B_dir’ 提示输入B数据库ora11g用户登陆密码,输入后进行传送
step3
将A_dmp文件导入B数据库中1、与step1中第一步相同
2、执行impdp命令
impdp username/passwd DIRECTORY=B_dump_dir DUMPFILE=a.dmp REMAP_SCHEMA=A_username:B_username LOGFILE=B_imp.log REMAP_TABLESPACE=A_DAT:B_DAT,A_IDX:B_IDX
其中_DAT为数据库表空间,_IDX为索引表空间,按实际情况进行填写