今天发现impdp命令有个特殊的用途,可以将数据库的一个用户迁移到另一台机器上的数据库的用户中。如果目标用户不存在,还可以对应的创建该用户。
下面就来看一下命令格式:
Impdpusername/passwd@dbsnameremap_schema=userA:userB remap_tablespace=tbsA:tbsB network_link=dblink_to_userA_on_userB
说明:
Userid:Username/passwd@dbsname。用户建议为system。
Remap_schema: userA:userB。数据库用户映射。
Remap_tablespace: tbsA:tbsB。默认表空间映射。
Schemas: userA。必须是dblink中指定用户。建议不指定。
Directory: 该种模式下,此参数指定的是日志文件的路径。如果不指定,则路径默认为data_pump_dir。
Network_link: 在备份库上创建的连接到目标机的dblink。
这样就能快速的把A库上的用户迁移到B库上。
不过有几个前提:
1、username:这个操作的数据库用户建议是system,如果是其他用户的话就需要有dba权限的用户才能执行;
2、dblink:必须能够连接到对应库上的数据库用户下。