我需要使用nhibernate连接到hadoop数据库。我试着用 NHibernate.Driver.OdbcDriver
. 我们使用的驱动程序是用于impala的cloudera odbc驱动程序。
通过代码使用的连接字符串如下:
DRIVER=Cloudera ODBC Driver for Impala;
Host=<Server>;
Port=<port>;
Schema=<schema>;
AuthMech=0;
CAIssuedCertNamesMismatch=0;
TrustedCerts=C:\Program Files (x86)\Cloudera ODBC Driver for Impala\lib\cacerts.pem;
我想在nhibernate配置中保留此连接字符串,因此添加了以下内容:
<property name="connection.driver_class">
NHibernate.Driver.OdbcDriver
</property>
<property name="connection.connection_string">
DRIVER=Cloudera ODBC Driver for Impala;
Host=<Server>;
Port=<port>;
Schema=<schema>;
AuthMech=0;
CAIssuedCertNamesMismatch=0;
TrustedCerts=C:\Program Files (x86)\Cloudera ODBC Driver for Impala\lib\cacerts.pem;
</property>
但这失败了,只有一个例外:
Message=ERROR [IM002] [Microsoft][ODBC Driver Manager]
Data source name not found and no default driver specified .
请注意,此连接字符串在没有 nHibernate
. 有什么明显的遗漏吗?
2条答案
按热度按时间thigvfpy1#
如果它能帮助别人;我安装了x64位驱动程序,医生说
但是64位odbc管理员使用
一旦我换了一个合适的名字,它就运行得天衣无缝了
jaxagkaj2#
问题是应用程序是为64位配置构建的,安装的驱动程序是32位的。更改了配置并再次构建它,它成功了。