必要条件: 1.关闭防火墙 2.将selinux设置为关闭:打开文件/etc/selinux/config,将其中SELINUX的值改为”disabled”(默认值:enforcing)
两个实例:DM1:192.168.134.128 DM2:192.168.134.129
INSTANCE_NAME = DM1/DM2 MAL_INI = 1
[MAL_INST1] MAL_INST_NAME = DM1 MAL_HOST = 192.168.134.128 MAL_PORT = 5256 MAL_INST_HOST = 192.168.134.128 MAL_INST_PORT = 5236 [MAL_INST2] MAL_INST_NAME = DM2 MAL_HOST = 192.168.134.129 MAL_PORT = 5256 MAL_INST_HOST = 192.168.134.129 MAL_INST_PORT = 5236
分别连上两个数据库(管理工具或者disql都可) 在DM1上创建DM2的dblink:
CREATE PUBLIC LINK LINK1 CONNECT 'DAMENG' WITH SYSDBA IDENTIFIED BY SYSDBA USING '192.168.134.129/5256';DM2上创建表:
create table test1(id int,name varchar(100));DM1上进行修改:
insert into test1@LINK1 values(1,'我的'); commit;DM1和DM2上进行查询:
DM1:select * from test1@LINK1 ; DM2:select * from test1;
返回同样的结果集。
达梦:192.168.134.128 版本:DM8 oracle:192.168.134.130 SID=ORACLE 版本:Oracle 11g
Windows版本下载地址: https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html Linux版本下载地址: https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html 按照oracle版本下载对应的sdk,basic,sqlplus包,将这些包解压合并放到dm数据库安装路径 bin下
在dm上执行:
create public link "LINK1" connect 'ORACLE' with "SYSTEM" identified by "123456789" using '(DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.174.130)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=ORACLE)))';ORACLE上创建表:
create table test1(id int,name varchar(100));DM上进行修改:
insert into test1@LINK1 values(1,'我的'); commit;ORACLE和DM上进行查询: DM:select * from test1@LINK1 ; ORACLE:select * from test1; 返回同样的结果集。