当前位置: 首页 > news >正文

达梦数据库-学习-18-ODBC数据源配置(Linux)

一、环境信息

名称
CPU12th Gen Intel(R) Core(TM) i7-12700H
操作系统CentOS Linux release 7.9.2009 (Core)
内存4G
逻辑核数2
DM版本1          DM Database Server 64 V8
2          DB Version: 0x7000c
3          03134284194-20240703-234060-20108
4          Msg Version: 12
5          Gsu level(5) cnt: 0

二、介绍

工作中我们经常遇到客户需要使用ODBC连接数据库,那配置ODBC数据源就成了必要的操作流程,今天我们来介绍一下配置ODBC数据源的步骤。

三、安装步骤

1、解压unixODBC安装包

[root@bogon Pkg]# tar -xvf unixODBC-2.3.0.tar.gz

2、切换目录

[root@bogon Pkg]# cd unixODBC-2.3.0/

[root@bogon unixODBC-2.3.0]# pwd
/opt/Pkg/unixODBC-2.3.0

3、配置

[root@bogon unixODBC-2.3.0]# ./configure

4、编译

[root@bogon unixODBC-2.3.0]# make

5、编译安装

[root@bogon unixODBC-2.3.0]# make install

UnixODBC默认安装路径为/usr/local。动态库路径为/usr/local/lib。

6、查看ODBC版本和配置信息

[root@bogon unixODBC-2.3.0]# odbcinst -j
unixODBC 2.3.0
DRIVERS............: /usr/local/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

7、odbcinst.ini配置

[root@bogon unixODBC-2.3.0]# cat /usr/local/etc/odbcinst.ini
[DM8 ODBC DRIVER]
Description = ODBC DRIVER FOR DM8
Driver = /opt/Dm8/bin/libdodbc.so

8、odbc.ini配置

[root@bogon unixODBC-2.3.0]# cat /usr/local/etc/odbc.ini
[DM8]
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = qwer1234S
TCP_PORT = 5236

9、测试ODBC数据源

[root@bogon unixODBC-2.3.0]# su - dmdba
上一次登录:三 4月  9 15:34:23 CST 2025pts/1 上

[dmdba@bogon ~]$ isql DM8 -v
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> 

大家记得切换到dmdba用户执行测试命令。如果大家提示动态库找不到之类的错误,可能是环境变量没有配置,可以参考如下内容,配置完记得source一下此文件。

[dmdba@czg0 ~]$ cat /home/dmdba/.bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/Dm8/bin"
export DM_HOME="/opt/Dm8"
[dmdba@czg0 ~]$ source /home/dmdba/.bash_profile

如果还连接不上,可能是libdodbc.so连接的动态库找不到导致的问题。

[dmdba@bogon ~]$ ldd /opt/Dm8/bin/libdodbc.so
        linux-vdso.so.1 =>  (0x00007ffc298ed000)
        libdmdpi.so => /opt/Dm8/bin/libdmdpi.so (0x00007f8830e5a000)
        libdmfldr.so => /opt/Dm8/bin/libdmfldr.so (0x00007f8830b27000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f883091f000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8830703000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f88304ff000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f88301f7000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f882fef5000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f882fb27000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f882f911000)
        libdmjson.so => /opt/Dm8/bin/libdmjson.so (0x00007f882f6e2000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f8831f68000)
        libdmutl.so => /opt/Dm8/bin/libdmutl.so (0x00007f882f4c7000)
        libdmelog.so => /opt/Dm8/bin/libdmelog.so (0x00007f882f257000)
        libdmos.so => /opt/Dm8/bin/libdmos.so (0x00007f882f021000)
        libdmcvt.so => /opt/Dm8/bin/libdmcvt.so (0x00007f882e8a3000)
        libdmmem.so => /opt/Dm8/bin/libdmmem.so (0x00007f882e690000)
        libdmstrt.so => /opt/Dm8/bin/libdmstrt.so (0x00007f882e482000)
        libdmcalc.so => /opt/Dm8/bin/libdmcalc.so (0x00007f882e1eb000)
        libdmdta.so => /opt/Dm8/bin/libdmdta.so (0x00007f882def4000)
        libdmcfg.so => /opt/Dm8/bin/libdmcfg.so (0x00007f882da8b000)
        libdmbcast.so => /opt/Dm8/bin/libdmbcast.so (0x00007f882d80a000)
        libdmmout.so => /opt/Dm8/bin/libdmmout.so (0x00007f882d530000)
        libdmcyt.so => /opt/Dm8/bin/libdmcyt.so (0x00007f882d30b000)
        libdmcpr.so => /opt/Dm8/bin/libdmcpr.so (0x00007f882d107000)
        libdmcomm.so => /opt/Dm8/bin/libdmcomm.so (0x00007f882ced3000)
        libdmdcrm.so => /opt/Dm8/bin/libdmdcrm.so (0x00007f882ccc6000)
        libdmshm.so => /opt/Dm8/bin/libdmshm.so (0x00007f882cac1000)
        libdmshmm.so => /opt/Dm8/bin/libdmshmm.so (0x00007f882c8bb000)
        libdmclientlex.so => /opt/Dm8/bin/libdmclientlex.so (0x00007f882c686000)
        libdmvtdskm.so => /opt/Dm8/bin/libdmvtdskm.so (0x00007f882c474000)
        libdmdcr.so => /opt/Dm8/bin/libdmdcr.so (0x00007f882c26b000)
        libdmvtdsk.so => /opt/Dm8/bin/libdmvtdsk.so (0x00007f882c063000)

 

 

 

相关文章:

  • CCF CSP 第35次(2024.09)(2_字符串变换_C++)(哈希表+getline)
  • java常见线程安全实现方案
  • 05-RabbitMQ 面试题-mk
  • 电感、互感器、变压器和磁珠综合对比——《器件手册--电感/线圈/变压器/磁珠篇》
  • Python 嵌套结构的defaultdict介绍
  • 训练模型的方式的两种方式:图像描述(Image Captioning)和对比学习(Contrastive Learning)原理及区别
  • 关于 Spring Boot 微服务解决方案的对比,并以 Spring Cloud Alibaba 为例,详细说明其核心组件的使用方式、配置及代码示例
  • 【25软考网工笔记】第二章 数据通信基础(2) 信道延迟计算
  • python利用open-cv和SSIM和特征值比较两个图片的相似性
  • JAVAEE(多线程)
  • 公路水运安全员,yyds!
  • (打卡)794. 高精度除法
  • js 效果展示 拿去练手
  • 大模型入门
  • Redis:线程模型
  • 小白学习java第12天:IO流之打印流、数据流、IO框架
  • Spark-core编程(三)
  • Redis与Caffeine的结合使用详解(高效的二级缓存解决方案)
  • 条件变量condition_variable
  • elementui table禁用全选,一次限制勾选一项。
  • 佛山网站制作专家/seo是怎么优化
  • 业网站制作/可以推广网站
  • 做网站时候那个页面都是单独的吗/推广的方式有哪些
  • 以百度云做网站空间/产品推销
  • 企业网站建设市场报价/快速排名优化系统
  • 科技网站设计案例/上海网站优化公司