KingbaseES数据库通过dblink访问Oracle数据库

本文介绍如KingbaseES数据库通过dblink访问Oracle数据库。

源端:KingbaseES数据库(KingbaseES V008R006C006B0021)

目标端:Oracle数据库

一、配置Oracle的ODBC

1、安装odbc,若有odbc则不用进行安装

yum -y install unixODBC

2、确认修改文件路径

odbcinst -j
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

3、上传Oracle的ODBC驱动到KingbaseES服务器

cp libsqora.so.19.1 /home/kingbase/KingbaseES/V8/Server/lib
chown -R kingbase:kingbase /home/kingbase/

4、配置驱动

vi /etc/odbcinst.ini
[Oracle ODBC Driver]
Description = ODBC for Oracle
Driver = /home/kingbase/KingbaseES/V8/Server/lib/libsqora.so.19.1

二、oracle创建测试数据

create user demo identified by 123456;
grant dba to demo;
create table demo.test(id int);
insert into demo.test values(1);
commit;
SQL> select * from demo.test;

        ID
----------
         1

三、KingbaseES数据库创建dblink

1、修改环境变量

vim .bashrc
export PATH=/home/kingbase/KingbaseES/V8/Server/bin:$PATH
export LD_LIBRARY_PATH=/home/kingbase/KingbaseES/V8/Server/lib

2、修改KingbaseES数据库配置文件
将kdb_database_link 加入 shared_preload_libraries 中,注意 kdb_database_link 必须放在最后,因为,与其他项间有依赖关系。
shared_preload_libraries='...,kdb_database_link'

重启数据库

3、登录数据库创建插件

create extension kdb_database_link ;
create extension oracle_fdw ;

4、登录数据库创建dblink

create public database link to_orcl_1 connect to 'demo' identified by '123456'
using ( DriverName = 'Oracle ODBC Driver' , Host = '192.168.128.200' , Port = 1521 , Dbname = 'orcl' , Dbtype = 'oracle');

四、KingbaseES数据库使用dblink查询Oracle数据

test=# select version();
                                                       version
----------------------------------------------------------------------------------------------------------------------
 KingbaseES V008R006C006B0021 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46), 64-bit
(1 行记录)

test=# select * from test@to_orcl_1;
 id
----
  1
(1 行记录)

  KingbaseES可以使用dblink访问Oracle数据库。

posted @ 2022-12-01 10:03  happy0824  阅读(565)  评论(0)    收藏  举报