1. 需要的包

unixODBC源码包unixODBC-2.2.14.tar.gz

mysql 驱动 mysql-connector-odbc-5.1.13-linux-glibc2.5-x86-32bit

以下配置要求root用户

2. 安装unixODBC

(注意要进入文件安装目录下解压)

解压

tar xzf unixODBC-2.2.14.tar.gz

进入解压目录

cd unixODBC-2.2.14

配置

./configure --enable-gui=no

编译

make

安装

make install

3. 安装freetds

解压

tar xzf freetds-0.64.tar.gz

进入解压目录

cd freetds-0.64

配置

./configure--with-tdsver=8.0 --enable-msdblib --with-unixodbc=/usr/local

编译

make

安装

make install

4. 安装MySql驱动

到如下地址 http://dev.mysql.com/downloads/connector/odbc/5.1.html 下载mysqlODBC驱动,然后安装

tar zxvf mysql-connector-odbc-5.1.13-linux-glibc2.5-x86-32bit.tar.gz
cd mysql-connector-odbc-5.1.13-linux-glibc2.5-x86-32bit

把该目录下所有的文件拷贝到系统库目录下

cp lib/* /usr/lib

5. 配置 unixODBC

5.1添加MySql驱动

(注意要在root用户,ect目录下)

vi etc/odbcinst.ini

写入如下内容

[MySQL]
Description     = MySQL driver
Driver          = /usr/lib/i386-linux-gnu/odbc/libmyodbc.so
Setup           = /usr/lib/i386-linux-gnu/odbc/libodbcmyS.so
CPTimeout       =
CPReuse         =

保存退出


注:也可通过sudo gedit odbcinst.ini命令编辑文件。

注意libmyodbc(mysql的odbc驱动)是否安装。没有的话通过apt-get install libmyodbc命令完成。

注意libmyodbc.so,libodbcmyS.so(libmyodbc的库文件)的路径。

5.2添加DSN

vi etc/odbc.ini

写入如下内容

[myodbc]
Driver       = MySQL
SERVER       = localhost
PORT         = 3306
USER         = root
Password     = yang
Database     = shanling
OPTION       = 3
SOCKET       =

注意Driver驱动要写odbcinst.ini中的驱动名称,Database是数据库的名称,然后保存并退出;测试ODBC的连接

root@ubuntu:/etc# isql myodbc root yang -v

会显示如下信息

—————————————————————

| Connected! |

| |

| sql-statement |

| help [tablename] |

| quit|

SQL> show tables;
+-----------------------------------------------------------------+
| Tables_in_shanling                                              |
+-----------------------------------------------------------------+
| fileinfo                                                        |
| useinfo                                                         |
+-----------------------------------------------------------------+
SQLRowCount returns 2
2 rows fetched
SQL> select * from fileinfo;
+-----------+-----------------------------------------------------------------------------------------------------+---------------------------------------------------+-----------+---------------------------------------------------+
| seq       | filename                                                                                            | userinformation                                   | filenum   | totalsize                                         |
+-----------+-----------------------------------------------------------------------------------------------------+---------------------------------------------------+-----------+---------------------------------------------------+
+-----------+-----------------------------------------------------------------------------------------------------+---------------------------------------------------+-----------+---------------------------------------------------+
SQLRowCount returns 0
SQL>


测试通过;下面就可以使用freetdsapi开发连接MySql数据库的程序了,可以使用cc++编写