万万哇 发表于 2025-1-6 01:33:17

虚谷数据库创建DBLink跨数据库访问

一、概述
        在虚谷数据库中创建DBLink来实现跨数据源访问的本事,用户可以在本地数据库上访问远端数据库。DBLink是虚谷数据库毗连外部存储的功能,用户可以创建和维护DBLink的实例,然后根据DBLink的利用规则,通过虚谷数据库去访问别的外部存储的数据,实现异构数据库之间数据库的推送和抽取。虚谷数据库采用ODBC尺度,理论上只要支持ODBC的数据库,都可以通过ODBC毗连。
二、ODBC安装
        在差别情况下的ODBC的部署方式大同小异,以下在Linux情况下,虚谷数据库DBLINK异构数据库Oracle,利用UnixODBC毗连Oracle的设置方式。
1.下载安装ODBC
           最低要求:unixODBC-2.3.12或更高版本
        下载地点:unixODBChttps://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83Ahttps://www.unixodbc.org/download.html
2.将下载好的ODBC上传到服务器指定目次,如:/home/unixODBC
        然后进行编译安装:
cd /home/unixODBC/
tar xf unixODBC-2.3.12.tar.gz
cd unixODBC-2.3.12/
./configure --prefix=/home/unixODBC
make -j4;make install; 3. 设置情况变量,在文件~/.bashrc尾部添加如下行:
export UNIXODBC_DIR=/home/unixODBC
export ODBCINI=$UNIXODBC_DIR/etc/odbc.ini
export ODBCSYSINI=$UNIXODBC_DIR/etc
export PATH=$UNIXODBC_DIR/bin:$UNIXODBC_DIR/lib:$PATH
export LD_LIBRARY_PATH=$UNIXODBC_DIR/lib:$UNIXODBC_DIR/bin:$LD_LIBRARY_PATH         其中的UNIXODBC_DIR路径根据自己的安装目次进行修改,最后执行source ~/.bashrc,使情况变量见效。
4. 验证安装是否乐成,可以大概查询版本和设置信息,说明安装设置乐成。
# isql --v
unixODBC 2.3.12

# odbcinst --version
unixODBC 2.3.12

# odbcinst -j
unixODBC 2.3.12
DRIVERS............: /home/unixODBC/etc/odbcinst.ini
SYSTEM DATA SOURCES: /home/unixODBC/etc/odbc.ini
FILE DATA SOURCES..: /home/unixODBC/etc/ODBCDataSources
USER DATA SOURCES..: /home/unixODBC/etc/odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8         其中odbcinst.ini为驱动设置文件,odbc.ini为数据源设置文件
三、安装Oracle ODBC
1.下载Oracle odbc,在Oracel官网中下载对应的版本:
        Oracle Instant Client ODBC 安装说明 | Oracle 中国
2.安装oracle odbc,将basic和odbc包解压到一个目次下:
cd /opt/oracle_client
unzip instantclient-basic-linux.x64-21.11.0.0.0dbru.zip
unzip instantclient-odbc-linux.x64-21.11.0.0.0dbru.zip 3. 设置本地服务名,在admin目次下创建tnsnames.ora文件,然后根据实际的Oralce情况修改下面的free_222(监听器别名),10.28.23.222(OracelP),1521(Oracle监听端口),free(服务名)
cd /opt/oracle_client/instantclient_21_11/;
cat > ./network/admin/tnsnames.ora <<"EOF"
free_222 =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.28.23.222)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = free)
    )
   )
EOF 4.设置Oracle odbc情况变量,在文件~/.bashrc尾部增加情况变量:ORACLE_ODBC_HOME、TNS_ADMIN、NLS_LANG,并将Oracle客户端的lib加到PATH和LD_LIBRARY_PATH,最后执行source ~/.bashrc,使情况变量见效。
export ORACLE_ODBC_HOME=/opt/oracle_client/instantclient_21_11
export TNS_ADMIN=$ORACLE_ODBC_HOME/network/admin/
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export LD_LIBRARY_PATH=$ORACLE_ODBC_HOME:$LD_LIBRARY_PATH
export PATH=$ORACLE_ODBC_HOME:$PATH         其中的ORACLE_ODBC_HOME根据实际的目次进行修改
四、设置ODBC驱动和客户端设置文件
1.设置驱动设置文件:/home/unixODBC/etc/odbcinst.ini

Description   = Oracle ODBC driver for Oracle 21
Driver          = /opt/oracle_client/instantclient_21_11/libsqora.so.21.1          Oracle:给驱动去别名,客户端设置文件利用
‘        Driver:Oracel驱动文件路径,一般在下载的Oracel ODBC解压目次下
2.客户端设置文件:/home/unixODBC/etc/odbc.ini

Driver = Oracle
ServerName = free_222         Driver:驱动名称,利用在驱动设置文件中给驱动取得别名
        ServerName:服务名称,前面设置的本地服务名
五、测试
1.利用isql下令测试
# isql -v 驱动名称 用户名 密码
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help                       |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>
        其中驱动名称对应驱动设置文件中的,如果提示Connected!代表毗连乐成。
2.创建DBlink毗连
        利用控制台工具xgconsole或者客户端工具登录虚谷数据库(必须是设置好ODBC的服务器),创建DBLINK,查询。
SQL> CREATE PUBLIC DATABASE LINK DBLINK1 FOR ORACLE CONNECT TO 'free@121.28.23.222:1521' USER 'oracle' IDENTIFIED BY 'oracle' USING 'linux_orcl_155';

Execute successful.
Use time:2 ms.

SQL> SELECT sysdate FROM dual@DBLINK1;

EXPR1 |
------------------------------------------------------------------------------
2023-11-07 16:12:47.106 AD |

Total 1 records.

Use time:951 ms.         其中linux_orcl_155对应客户端设置文件中的
        以上就是整个虚谷数据库的创建DBlink跨数据库毗连的方式,如果要毗连MYSQL,PG等其他数据库,流程大抵一致只是修改每种数据库的ODBC和情况变量即可,在这里就不累赘了。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 虚谷数据库创建DBLink跨数据库访问