暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase 8s ODBC连接常见问题处理2

淮海路小佩奇 2023-05-30
906

Driver's SQLAllocHandle on SQL_HANDLE_DBC failed

此问题的可能原因:可执行文件(比如 UnixODBC 的 isql,以下都以 isql 为例)与数据库驱动(psqlodbcw.so)依赖于不同的 odbc 的库版本:libodbc.so.1 或者 libodbc.so.2。此 问

题可以通过如下方式确认:

ldd `which isql` | grep odbc ldd psqlodbcw.so | grep odbc

这时,如果输出的 libodbc.so 最后的后缀数字不同或者指向不同的磁盘物理文件, 那么基本就可以断定是此问题。isql 与 psqlodbcw.so 都会要求加载 libodbc.so,这时如果它们加

载的是不同的物理文件,便会导致两套完全同名的函数列表,同时出现在同一个可见域里(UnixODBC 的 libodbc.so.*的函数导出列表完全一致), 产生冲突,无法加载数据库驱动。

解决办法:确定一个要使用的 UnixODBC,然后卸载另外一个(比如卸载库版本号为.so.2的 UnixODBC),然后将剩下的.so.1 的库,新建一个同名但是后缀为.so.2 的软链接,便可解决此问题。

FATAL: Forbid remote connection with trust method!

由于安全原因,数据库主节点禁止 GBase 8s 内部其他节点无认证接入。

如果要在 GBase 8s 内部访问数据库主节点,请将 ODBC 程序部署在数据库主节点所在机器,服务器地址使用"127.0.0.1"。建议业务系统单独部署在 GBase 8s 外部,否则可能会影响数据库运行性能。

 [unixODBC][Driver Manager]Invalid attribute value

有可能是 unixODBC 的版本并非推荐版本,建议通过“odbcinst --version”命令排查环境中的 unixODBC 版本。

authentication method 10 not supported.

使用开源客户端碰到此问题,可能原因:

数据库中存储的口令校验只存储了SHA256格式哈希,而开源客户端只识别MD5 校验,双方校验方法不匹配报错。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论