一、软件包
## Oracle 11G的OCI包dblink11g.tar.gz## 如果确实缺失的话 才需要放这个文件libnsl.so.1
二、配置oracle监听
[root@s11g db]# su - oracle[oracle@s11g:/home/oracle]$ cd $ORACLE_HOME## 1. 如果没有 network/admin/ 目录就新建[oracle@s11g:/oracle/app/oracle/product/11.2.0/db]$ mkdir -p network/admin/[oracle@s11g:/oracle/app/oracle/product/11.2.0/db]$ cd network/admin/## 2. 如果有以下文件则修改 没有则新增,具体内容看下方的三个文件vim listener.oravim tnsnames.oravim shrept.lst
1. listener.ora
#这是一个名为 LISTENER1 的监听器
#监听的协议是TCP协议
#监听的主机IP是82.156.213.133
#监听的端口是1521端口
LISTENER1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 82.156.213.133)(PORT = 1521))
)
#记录了监听器LISTENER1服务的全局数据库名、数据库路径和数据库实例名
SID_LIST_LISTENER1 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = /oracle/app/oracle/product/11.2.0/db)
(SID_NAME = orcl)
)
)
2. tnsnames.ora
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 82.156.213.133)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oracle)
)
)
3. shrept.lst
# function entry points for genclntsh.sh
network : snaumihi_inithostinfo
network : snaumbg_gmt
network : naedpwd_encrypt
network : naumbsb_bld_singlebyte
network : ztapis
network : nlgh
network : ztvp52
network : ztcr2rnd
network : ztceenc
network : ztcedec
network : ztcegml
network : ztcegol
network : ztcef
network : ztcen
network : ztcei
network : ztcer
network : ztcegblksz
## 3. 修改完以后 重启监听
[oracle@s11g:/oracle/app/oracle/product/11.2.0/db/network/admin]$ lsnrctl reload
[oracle@s11g:/oracle/app/oracle/product/11.2.0/db/network/admin]$ lsnrctl start
[oracle@s11g:/oracle/app/oracle/product/11.2.0/db/network/admin]$ lsnrctl status

## 4. 测试监听是否正确
[oracle@s11g:/oracle/app/oracle/product/11.2.0/db/network/admin]$ tnsping orcl
4. 新增用户及数据
## 5. 测试正常登录以及新增数据
[oracle@s11g:/home/oracle]$ sqlplus / as sysdba
## 修改密码
alter user system identified by Oracle123#
SQL> create user scott identified by oracle;
SQL> grant dba to scott;
SQL> conn scott/oracle
## 5.1 新增数据
create table TCE(ID CHAR(10),CREATE_DATE DATE );
insert into TCE VALUES(1, to_date('2019-2-26 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(2, to_date('2019-2-27 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(3, to_date('2019-2-28 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(4, to_date('2019-3-1 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(5, to_date(to_char('2021-12-05 11:14:25' , 'yyyy-mm-dd hh24:mi:ss')));
insert into TCE VALUES(6, to_date('2021-12-06 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(7, to_date('2021-12-07 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(8, to_date('2021-12-08 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(9, to_date('2021-12-09 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(10, to_date('2021-12-10 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
insert into TCE VALUES(11, to_date('2021-12-11 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
## 5.2 查询语句
select * from TCE where CREATE_DATE > to_date(to_char('2019-2-27 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
三、配置Instant Client
1. 安装Instant Client
## 1. 进入 /lib64目录
[root@lib64]# cd /lib64;
## 2. 上传安装包到 /lib64目录下
[root@lib64]# rz dblink11g.tar.gz
## 3. 解压并执行脚本安装
[root@lib64]# tar -zxvf dblink*.tar.gz
[root@lib64]# ./run.sh
2. 配置dmdba环境变量
## 1. 配置dmdba的环境变量
[root@iZ2zegdg3jn4k03ylt4m6rZ ~]# su - dmdba
[dmdba@iZ2zegdg3jn4k03ylt4m6rZ ~]$ vi ~/.bash_profile
##########内容如下##########
export DM_HOME="/opt/dmdbms"
export LD_LIBRARY_PATH=/opt/dmdbms/bin:/lib64
export LANG=zh_CN.utf8
##########内容如下##########
[dmdba@iZ2zegdg3jn4k03ylt4m6rZ ~]$ source ~/.bash_profile
3. 重启数据库
## 2.重启达梦数据库
[dmdba@iZ2zegdg3jn4k03ylt4m6rZ bin]$ ./DmServiceDMSERVER restart
Stopping DmServiceDMSERVER: [ OK ]
Starting DmServiceDMSERVER:
4. 验证Instant Client
[dmdba@VM-0-4-centos ~]$ cd /lib64/
## 测试一下
[dmdba@VM-0-4-centos lib64]$ ./sqlplus SCOTT/oracle@82.156.213.133:1521/oracle
SQL*Plus: Release 11.2.0.4.0 Production on Wed Dec 8 09:43:49 2021
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>
## 如果报 1. error while loading shared libraries: libnsl.so.1 自行查看附录中的解决方案
PL/SQL连接
四、配置DM数据库
1. 新建dblink连接
## 1.新建dblink连接 注意修改IP,端口,SID
create public link "TEST1" connect 'ORACLE' with "SCOTT" identified by "******" using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 82.156.213.133)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = oracle )
)
)';
## 2.DBLINK 查询
select * from TCE@test1;
## 新建视图查询
CREATE VIEW TEST_TCE AS select * from TCE@test1;
## 查询指定范围的数据
select * from TEST_TCE where CREATE_DATE > to_date(to_char('2019-2-27 11:14:25' , 'yyyy-mm-dd hh24:mi:ss'));
五、附录
1. error while loading shared libraries: libnsl.so.1

缺失了libnsl.so文件,将压缩包中的文件拷贝到/lib64目录下
libnsl.so.1.zip
六、资料
链接:https://pan.baidu.com/s/1DycTpVnGlZVu6Dio-uDu6A
提取码:6a27
--来自百度网盘超级会员V3的分享
