### ODBC 数据源说明 #### 一、ODBC 概述与配置文件介绍 开放式数据库连接(Open Database Connectivity,简称 ODBC)是一种用于程序访问数据库的标准接口,它为应用程序提供了与多种数据库系统交互的能力。ODBC 通过使用驱动程序来支持不同的数据库系统,这些驱动程序作为中间层,将 ODBC API 转换成特定数据库系统的调用。 在 ODBC 的配置过程中,有两个主要的配置文件:`odbc.ini` 和 `odbcinst.ini`。这两个文件在 ODBC 的配置中扮演着非常重要的角色。 #### 二、`odbcinst.ini` 文件详解 `odbcinst.ini` 文件主要用于记录 ODBC 驱动程序的信息。该文件通常包含以下几个部分: 1. **Driver**:列出所有可用的 ODBC 驱动程序。 2. **Setup**:指定用于安装或配置驱动程序的应用程序。 3. **File Usage**:定义驱动程序文件的使用情况。 例如,在 `odbcinst.ini` 文件中可以看到类似以下内容: ``` [MySQL] Description=MySQL ODBC Driver Driver=/usr/local/mysql/lib/libmyodbc.so Setup=/usr/local/mysql/lib/libmyodbcinst.so UsageCount=1 ``` #### 三、`odbc.ini` 文件详解 `odbc.ini` 文件则用于记录数据源 (Data Source Name, DSN) 的详细信息。数据源是应用程序用来连接到数据库的名称,可以分为两种类型:系统 DSN 和用户 DSN。 1. **系统 DSN**:存储在 `/etc/odbc.ini` 或 `/usr/local/etc/odbc.ini` 中,适用于所有用户。 2. **用户 DSN**:存储在用户的主目录下,如 `~/.odbc.ini`,仅适用于当前用户。 每个 DSN 在 `odbc.ini` 文件中通常包含以下信息: - **Driver**:指向驱动程序的路径。 - **Server**:数据库服务器的地址。 - **Database**:要连接的具体数据库名称。 - **User**:数据库用户名。 - **Password**:数据库密码。 #### 四、DSN 的配置与使用 DSN 的配置可以通过多种方式实现,其中最常见的是通过命令行工具 `odbcinst` 进行操作。下面详细介绍如何使用 `odbcinst` 来管理和配置 DSN。 ##### 1. 命令行工具 `odbcinst` `odbcinst` 是一个用于管理 ODBC 配置的工具,包括添加、删除和查询数据源。其基本用法可以通过 `-h` 参数获取帮助信息。 ##### 2. 添加 DSN - **添加系统 DSN**:使用 `-s` 参数,并通过 `-l` 参数将信息写入系统配置文件 `/etc/odbc.ini`。 ``` /usr/bin/odbcinst -i -d -f file /usr/bin/odbcinst -i -s -l -f file ``` - **添加用户 DSN**:使用 `-s` 参数,并将信息写入用户的个人配置文件 `~/.odbc.ini`。 ``` /usr/bin/odbcinst -i -s -f file ``` ##### 3. 删除 DSN 删除 DSN 可以使用 `-u` 参数。需要注意的是,删除系统 DSN 会直接修改 `/etc/odbc.ini` 文件中的信息。 ``` /usr/bin/odbcinst -u -d -n DSN_NAME /usr/bin/odbcinst -u -s -n DSN_NAME ``` ##### 4. 查询 DSN 查询 DSN 的信息可以通过 `-q` 参数实现,这有助于了解已存在的 DSN 配置详情。 ``` /usr/bin/odbcinst -q -d /usr/bin/odbcinst -q -s ``` #### 五、`odbcinst` 的不同版本及使用 根据系统环境的不同,`odbcinst` 可能位于 `/usr/bin/odbcinst` 或 `/usr/local/bin/odbcinst`。这两个版本在功能上基本相同,但配置文件的位置有所不同。 1. **系统级 `odbcinst`**:用于管理系统级别的配置文件 `/etc/odbcinst.ini` 和 `/etc/odbc.ini`。 - 安装驱动:`/usr/bin/odbcinst -i -d -f file` - 添加系统 DSN:`/usr/bin/odbcinst -i -s -l -f file` - 添加用户 DSN:`/usr/bin/odbcinst -i -s -f file` 2. **用户级 `odbcinst`**:用于管理用户的个人配置文件 `~/.odbc.ini`。 - 安装驱动:`/usr/local/bin/odbcinst -i -d -f file` - 添加用户 DSN:`/usr/local/bin/odbcinst -i -s -f file` - 添加系统 DSN:`/usr/local/bin/odbcinst -i -s -l -f file` #### 六、总结 ODBC 是一种广泛使用的数据库连接标准,它通过驱动程序实现了应用程序与多种数据库之间的交互。`odbc.ini` 和 `odbcinst.ini` 文件分别用于存储数据源信息和驱动程序信息,而 `odbcinst` 工具则提供了管理这些配置的强大功能。正确理解和使用这些文件和工具,对于搭建和维护基于 ODBC 的数据库应用至关重要。
odbc.ini文件记录的是odbc在访问各种数据库时的数据库连接信息。
2.系统DSN和用户DSN
⑴
系统DSN配置文件是/etc/odbc.ini(或/usr/local/etc/odbc.ini),该配置信息可以被所有用户使用。
用户DSN配置文件是~/.odbc.ini,该配置文件信息只能被该用户所使用。
⑵
使用时先去找用户DSN再去找系统DSN(至少我使用/usr/bin/isql连接数据库是这样的)
3.odbcinst命令的使用
可以使用命令odbcinst -h来显示odbcinst的使用。有如下功能:
①安装odbc在访问某数据库时所需要的驱动。
②安装数据源。
③卸载驱动。
④卸载数据源(好像系统DSN不能用命令卸载,可以直接到配置文件中删除)。
⑤查询数据源和驱动的信息。
4./usr/bin/odbcinst和/usr/local/bin/odbcinst区别(也是最重要的)
⑴相关性:
①/usr/bin/相关的odbc命令,/usr/lib/相关的odbc库,/etc/相关的odbc配置文件--------------------这三者是一起的。
②/usr/local/bin/相关的odbc命令,/usr/local/lib/相关的odbc库,/usr/local/etc/相关的odbc配置文件----------------------这三者是一起的。
⑵命令使用说明:
①/usr/bin/odbcinst -i -d -f file
该命令会把模板文件file中的数据库驱动信息安装到/etc/odbcinst.ini中。
②/usr/bin/odbcinst -i -s -f file
该命令会把模板文件file中的数据源连接信息安装到用户的~/.odbc.ini中。
③/usr/bin/odbcinst -i -s -l -f file
该命令会把模板文件file中的数据源连接信息安装到系统的/etc/odbc.ini中。
④卸载用-u选项,(注意:系统的数据源连接信息不能用命令卸载掉,可以手工删除/etc/odbc.ini中某个数据源的信息)。
-----------------------------------------------下面说/usr/local/bin/odbcinst------------------------------
①/usr/local/bin/odbcinst -i -d -f file
该命令会把模板文件file中的数据库驱动信息安装到usr/local/etc/odbcinst.ini中。
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助