因为公司业务需要,需要将部分数据分离出来然后从A库迁移到B库,因为A库和B库的连接都需要VPN,所以我在本地建立了一个和A库结构一致的C库作为中转,由A到C再由C到B来完成数据迁移,工具用的是Navicat Premium,接下来是执行流程
1.建立DBLINK准备使用,此处的连接账号和密码还有地址都是A库的地址,这个DBLINK是要放在我们本地去执行的。
create public database link dblink_A
connect to 连接数据库的账号
identified by 连接数据库的密码
using 'ip:端口号/服务名';
2.在本地执行完这条后就已经完成了创建,相当于A-C之间的桥梁已经搭建起来了,开始传输数据
insert into C.TABLE_NAME
select * from A.TABLE_NAME@DBLINK_A;
3.当我想进行一样的操作来传输C-B 的时候出现了问题,连上VPN后你想通过DBLINK连接B-C会有ip地址无法解析的问题,还是选择C-B的连接方式 ,然后这样把数据传输上去
insert into B.TABLE_NAME@DBLINK_B
select * from C.TABLE_NAME;