配置 | 使用ODBC连接数据库

文章介绍了如何通过ODBC在Linux环境中连接Oracle和DM数据库,包括下载ODBC软件,配置ODBC驱动,设置$LD_LIBRARY_PATH,编辑odbc配置文件(/etc/odbcinst.ini和/etc/odbc.ini),并展示了使用isql-v命令无密码连接Oracle数据库的例子。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可通过ODBC连接多种数据库,如DM数据库、ORACLE数据库等

若程序需要与数据库进行交互(连接数据库、执行某些SQL等),可以通过配置ODBC实现
ODBC配置成功后,应用程序便拥有了与数据库交互的接口,两者便能交互

odbc的下载及配置连接步骤如下

  • 下载odbc这款软件(http://www.unixodbc.org/)
    具体步骤暂时略过
  • 安装相应数据库提供的odbc驱动
    要通过odbc连接oracle数据库,就下载oracle提供的odbc驱动
    要通过odbc连接dm数据库,就下载dm提供的odbc驱动

例如:
使用odbc连接oracle12c,需要下载以下两个文件
instantclient-basic-linux.x64-12.2.0.1.0.zip
instantclient-odbc-linux.x64-12.2.0.1.0-2.zip
下载地址:
http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

  • 配置用户的$LD_LIBRARY_PATH参数
    需要正确配置LD_LIBRARY_PATH,使得操作系统能找到运行odbc和通过odbc连接数据库所需要的包
  • 配置odbc
    最后,编辑odbc配置文件,使得odbc可以连接你想要的数据库
    主要包括以下两个文件(/etc/odbcinst.ini、 cat /etc/odbc.ini)
要想在dm8的服务器上,通过odbc连接oracle12c的数据库,由于没有安装oracle相关的东西,故用连接串连接oracle12c不方便,这里使用ip:port/db_name的方式连接
[oracle]
Description     = ODBC for Oracle
Driver          = /home/dmdba/soft/instantclient_12_2/libsqora.so.12.1
Database        = orcl
Servername      = 192.168.8.139:1521/orcl
UserID          = DMHS
Password        = dmhs
Port            = 1521

注意:此处Driver使用了绝对路径,故无需配置/etc/odbcinst.ini

  • 检查数据库提供的odbc驱动是否可用
    若下载的odbc驱动不正确,或LD_LIBRARY_PATH,可能导致odbc无法连接数据库,需通过ldd命令,检查是否缺失依赖包
ldd /home/dmdba/soft/instantclient_12_2/libsqora.so.12.1
  • 使用odbc连接数据库
    /etc/odbc.ini配置的是[oracle],故使用oracle连接数据库
    由于/etc/odbc.ini配置了用户密码,故无需输入用户密码
[dmdba@localhost soft]$ isql -v oracle
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值