farmer111 发表于 2018-9-28 12:07:20

ubuntu下安装unixODBC(mysql)

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 下载mysql的ODBC驱动,然后安装
  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
  把该目录下所有的文件拷贝到系统库目录下
  cplib/* /usr/lib
5. 配置 unixODBC
5.1添加MySql驱动
  (注意要在root用户,ect目录下)
  vi etc/odbcinst.ini
  写入如下内容
  
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
  写入如下内容
  
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          |
  | 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>
  测试通过;下面就可以使用freetds的api开发连接MySql数据库的程序了,可以使用c、c++编写。


页: [1]
查看完整版本: ubuntu下安装unixODBC(mysql)