当前位置: 首页 > 工具软件 > unixODBC > 使用案例 >

Linux下unixodbc编译和使用

孟成化
2023-12-01

odbc介绍

ODBC(Open Database Connect)是由Microsoft 公司于1991 年提出的一个开放的,用于访问数据库的统一接口规范。 开放式数据库连接 (odbc) 技术为访问不同种类的 sql 数据库提供了通用接口。odbc 是基于结构查询语言 (sql) 的,以此作为访问数据的标准。此接口提供了最大的互操作性:一个应用程序可以通过一组公用代码访问不同的 sql 数据库管理系统 (dbms)。这使得开发人员能够在不以特定的 dbms 为目标的情况下构建和分发一个客户端/服务器应用程序。然后,会添加数据库驱动程序以将应用程序链接到用户选择的 dbms。

unixodbc介绍

unixODBC的是为非Window平台的系统实现ODBC规范接口的中间件

unixodbc下载路径

  • 源码下载路径:
  • 安装程序下载路径:

unixodbc编译以及打包

  • 解压unixodbc文件:tar -xvf unixodbc
  • 进入解压文件:cd 文件名称
  • 生成makefile文件:./configure
  • 编译unixodbc:make
  • 使用打包命令打包: checkinstall -D make install(需要安装checkinstal命令 apt-get install dh-make checkinstall)

unixodbc设置

ODBC会区分两种类型的ini文件。系统ini文件能被所有用户访问,但是不能修改;用户ini文件则是针对特定用户的,并且能被该特定用户修改。
ODBC的系统文件是odbcinst.ini和odbc.ini。用户文件是~/.odbc.ini(注意开头.号),并包含在各自用户的home目录下。系统文件odbcinst.ini包含对所有用户可访问的O
DBC驱动信息;odbc.ini文件包含所有用户可访问的DSN信息。这些'系统DSN'对于如web服务器这样,不以真实用户身份运行的应用十分有用,因为这些程序不会有自己的home目录来存放.odbc.ini文件。
举一个含ODBC支持的Apache和PHP的例子。当http server第一次启动时,它通过root调用SQLAllocEnv。然后它再切换到指定用户去调用SQLConnect。此时如果DSN不是一个系统DSN,就会出现fails。

  • odbcinst.ini : 驱动配置
  • odbc.ini : 数据源配置
  • mysql 配置说明:
    odbcinst.ini
    [mysql] #驱动名称(在odbc.ini中使用)
    Driver=/usr/local/lib/libmyodbc5.so #依赖库
    SETUP=/usr/local/lib/libmyodbc5.so #依赖库
    UsageCount=1
    odbc.ini
odbc.ini 神通数据库odbc配置说明
[odsn]
Driver = /opt/ShenTong/odbc/lib/liboscarodbcw.so #驱动名称 (或者直接指定驱动 Driver = odbcinst.ini 中的驱动名称)
Servername = localhost #神通数据库服务器的IP地址
Port = 2003 #数据库端口号
Database = osrdb #神通数据库实例名
Username = sysdba #数据库名
Password = szoscar55 #用户密码
下边是非必要字段:
SocketBufferSize = 4096 #网络缓存大小
FetchBufferSize = 100 #结果集缓存大小
Trace = yes #是否开启跟踪日志
TraceFile = /tmp/odbc.log #日志路径
UseStaticCursor=1 #这个参数为默认使用静态游标方式
UseDeclareFetch=1 #配合上一个参数使用

数据库驱动下载

mysql: wget https://cdn.mysql.com//Downloads/Connector-ODBC/5.3/mysql-connector-odbc-5.3.9-linux-glibc2.12-x86-64bit.tar.gz

 类似资料: