MySQL ODBC连接器和unixODBC问题 – 乱码连接

有一段时间试图隔离一个新的服务器安装问题:

我已经安装了MySQL,unixODBC和MySQL Connector for ODBC,如我在其他32位系统上安装odbc.ini和odbcinst.ini,但遇到应用程序(PHP除外)在查询后收到乱码数据的问题。

为了进行控制,下面是MySQL直接查询返回的内容:

  mysql> select id,用户名限制为3;
 + ------ + ---------- +
 |  id | 用户名|
 + ------ + ---------- +
 |  786 |  101010 |
 |  587 |  1234 |
 |  1124 |  123456 |
 + ------ + ---------- +
 3行(0.00秒)

 MySQL的>

通过ODBC在isql中的相同的命令返回这个乱码结果,只返回第一块数据:

  SQL> select id,用户名限制为3;
 + ----------- + --------------------------------- +
 |  id | 用户名|
 + ----------- + --------------------------------- +
 |  786 |
 |
 |
 + ----------- + --------------------------------- +
 SQLRowCount返回3
取3行
 SQL>

我的应用程序(如isql)无法返回多个数据。 奇怪的PHP脚本似乎工作正常,但不幸的是我的应用程序不是基于PHP的。 这里是格式化的PHP输出:

  ID:786用户名:1​​01010
 ID:587用户名:1​​234
 ID:1124用户名:1​​23456 

ODBC.INI

  [站点分贝]
说明= MySQL ODBC站点数据库
 Driver = MySQL
用户= root
密码=密码
数据库=testing
选项= 3
 Socket = /var/lib/mysql/mysql.sock 

ODBCINST.INI

  [MySQL的]
 DRIVER = /usr/lib64/libmyodbc3.so
 UsageCount = 1

系统信息:

操作系统:CentOs 5.7 x86_64
MySQL:服务器版本:5.5.20 – 通过Remi x86_64loggingMySQL社区服务器(GPL)
MySQL连接器:v3.51.30-0 x86_64
unixODBC:2.2.11 x86_64

如果有人能就我如何解决这个问题提出一些build议,将不胜感激。

使用MySQL中的RPM是错误的方法。 发现了一个EL5的RPM工作顺利,不知道在YUM回购协议中没有显示什么……但现在一切都很好。