在本机上建立一个链接
修改oracle的配置文件:oracle/OraHome1/network/admin/tnsnames.ora
加入
ora73 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL= TCP)(Host= (链接地址)(Port= 1688))
(CONNECT_DATA = (SID = ora73))
)
重启监听
进行本机 sqlplus user/passwd
create database link name connect to username by identified passwd using 'name';
这样你就可以在本机的数据库上访问远程机了
修改oracle的配置文件:oracle/OraHome1/network/admin/tnsnames.ora
加入
ora73 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL= TCP)(Host= (链接地址)(Port= 1688))
(CONNECT_DATA = (SID = ora73))
)
重启监听
进行本机 sqlplus user/passwd
create database link name connect to username by identified passwd using 'name';
这样你就可以在本机的数据库上访问远程机了
然后 Create tableA as (select * from tableB@databaseB)…………
2. create table a as select * from tableB@dblink where 0=1 (复制结构)
3. insert into a select * from tableB@dblink where xxx=... (拷贝你想拷贝的数据)
如果是全部拷贝,那就在2步直接create table a as select * from tableB@dblink但有一点,用这种CTAS方式只能重建约束和索引,要是你嫌麻烦那就用exp/imp
在create table a as select * from tableB@dblink where 0=1的时候
总是说dblink处TNS: 无法处理服务名
或者是:未找到远程数据库的连接说明请教原因,再次谢谢!