目标:使用oracle数据泵,将A电脑上的数据库databaseA导出后,再导入到B电脑上的数据库databaseB中。
A电脑上的操作(expdp数据导出):
- 运行cmd;
登录数据库,输入命令:
sqlplus;使用管理员角色登录需要在用户名后加“
as sysdba” 例如:sys as sysdba创建目录路径:输入命令:
create directory data_dir as 'E:\ora\data' ;;1、
data_dir为路径名称,可自命名,E:\ora\data为数据库导出文件存放路径(路径必须存在);
2、使用命令:select * from dba_directories可查询用户创建目录。为oracle用户授予访问数据目录的权限,输入命令:
Grant read,write on directory data_dir to dbuser;;dbuser为数据库用户名(与第5步中相同)。导入导出操作授权,输入命令:
grant exp_full_database,imp_full_database to dbuser;;退出,输入命令:
exit;;数据导出,执行命令:
expdp dbuser/123456@orcl schemas=dbuser dumpfile=expdp.dmp directory=data_dir logfile=expdp.log。expdp [为用户名]/[密码]@[服务名]
schemas=[为用户名]
dumpfile=[导出数据库文件(可自命名)]
directory=[目录名]
logfile=[日志文件文件名(可自命名)]
注意:命令结束不需要加“;”!
B电脑上的操作(impdp 数据导入):
- 运行cmd;
登录数据库,输入命令:
sqlplus;使用管理员角色登录需要在用户名后加“
as sysdba” 例如:sys as sysdba创建目录路径:输入命令:
create directory data_dir as 'E:\ora\data' ;;1、
data_dir为路径名称,可自命名,E:\ora\data为数据库导出文件存放路径(路径必须存在);
2、使用命令:select * from dba_directories可查询用户创建目录。为oracle用户授予访问数据目录的权限,输入命令:
Grant read,write on directory data_dir to dbuser;;dbuser为数据库用户名(与第5步中相同)。导入导出操作授权,输入命令:
grant exp_full_database,imp_full_database to dbuser;;将从A电脑中
E:\ora\data目录下的.dmp数据泵导出文件拷贝至B电脑创建的目录(E:\ora\data)中;退出,输入命令:
exit;;数据导入,执行命令:
impdp user/123456@orcl REMAP_SCHEMA = dbuser:user table_exists_action = replace directory=data_dir dumpfile=expdp.dmp logfile=expdp.log。impdp [用户名]/[密码]@[服务名]
REMAP_SCHEMA=[源用户名1]:[目标用户名2]
table_exists_action=replace /*存在的表动作(覆盖)*/
directory=[目录名]
dumpfile=[.dmp文件名]
logfile=[.log文件名]
注意:命令结束不需要加“;”!

本文详细介绍了如何使用Oracle数据泵(expdp/impdp)工具完成数据库从一台电脑到另一台电脑的迁移过程。包括了在源端进行数据导出的具体步骤及命令,并指导如何在目标端导入这些数据。
1万+





