通过otl来使用MySQL

1. isql -v DNS USER PWD,这里DNSodbc.ini开头的名称,USER为用户,PWD为密码.

  需要编写odbc.iniodbcinst.ini两个文件

  odbc.ini文件内容:  

    [mysql]    //这里是DNS文件的名称

Description = Data Source to mysql_from for read config for scp_platfom 

Driver = MYSQL   //MYSQL要在odbcinst.ini文件中申明

TraceFile = sql.log

TDS_Version = 8.0

Trace = Yes

Server = 192.168.1.98    //这里是数据库所在主机的ip地址,如果数据库在本地,可以为localhost

Port = 3306      //数据库的端口,一般默认为3306

Database = scp_pm     //数据库名称

 

  odbcinst.ini文件内容:

[MYSQL]

Dirver = /usr/local/lib64/libmyodbc5a.so   //这里是odbc库的存放位置,指明了odbc驱动

Description = ODBC for MYSQL

  

2. [unixODBC][Driver Manager]Can't open lib '/usr/lib64/odbc/libmyodbc.so' : file not found)

  这里是mysql-connector-odbc的版本不对,在http://dev.mysql.com/downloads/connector/odbc/5.1.html中下载

  mysql-connector-odbc-5.3.2-linux-glibc2.5-x86-64bit.tar64位),解压后加入将lib下  

 的libmyodbc5a.solibmyodbc5w.so拷贝到/usr/local/lib64即可

 

3. Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

  通过下面博客解决http://blog.csdn.net/junchaox/article/details/7287137

  主要是默认的mysql.sock实在/tmp下,而在安装时是在/var/lib/mysql/mysql.sock下,这里只要在odbc.ini中添加

  SOCKET=/var/lib/mysql/mysql.sock即可

  网上出现这个错误可能的原因还有MySQLport改变了,其一般默认为3306

 

4. gcc -o otl_hello otl_hello.cpp -l myodbc5

  出错:/usr/bin/ld: warning: libodbcinst.so.1, needed by /usr/local/lib64/libmyodbc5.so, not found (try using -rpath or -rpath-

link)

  出错的原因是我们使用的libmyodbc5a.so,其在/usr/local/lib中对应的是libodbcinst.so.2,没有libodbcinst.so.1

  解决方法:

  gcc -o otl_hello otl_hello.cpp -l myodbc5a,同时要将/usr/local/lib; /usr/local/lib64加入到LD_LIBRARY_PATH中,在程

序运行时可以支持

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值