我正在使用一台Windows机器连接到一个远程DB2实例。遇到此问题
SQL1531N The connection failed because the name specified with the DSN connection string keyword could not be found in either the db2dsdriver.cfg configuration file or the db2.cli.ini configuration file. Data source name specified in the connection string: <DSN>
我已经使用ODBC Data Source Administrator
配置了ODBC数据源,它已经成功连接。
经过进一步的调查,我无法在IBMDATASERVERDRIVER文件夹中找到db2dsdriver.cfg。我可以找到db2dsdriver.lvl和dbs2dsdriver.xds,只是找不到.cfg文件。我也不确定HammerDB在哪里查找配置文件。
我已经从网站上查看了DB2的配置,但无法从中获得任何有用的信息。https://www.hammerdb.com/docs/ch04s02.html
对于IBM的小型封装ODBC and CLI driver
(称为clidriver(,您负责创建和编辑db2dsdriver.cfg
配置文件。它是一个小的XML文件,记录在这里和相关的链接页面中。hammerdb文档也给出了一个最小的例子,您在问题中链接到了这个页面。
您可以通过db2cli
工具的命令行创建和编辑此文件,或通过直接使用文本编辑器(或XML编辑器(进行编辑。使用编辑器可能比学习命令行更容易,尽管命令行的优点是可以为大型安装编写此活动的脚本。
在Microsoft Windows上,您还可以使用记事本创建和编辑文件db2dsdriver.cfg
。
一个重要的步骤是,在编辑文件之后,您必须首先验证其内容,然后才能尝试任何数据库连接。验证检查文件中XML的语法是否正确。要进行验证,请使用此处描述的db2cli validate
命令。在您尝试连接到任何数据库之前,它必须显示成功的结果。验证无错误完成后,您还可以使用db2cli validate -connect -dsn XXX -user YYY -passwd ZZZ
独立于应用程序测试连接(在本例中为hammerdb(。一旦您成功连接到db2cli validate -connect -dsn ...
,那么您的应用程序(hammerdb(将正确连接。
在线db2dsdriver.cfg
内容有很多示例,但您的第一个来源应该是在线Db2知识中心,它详细介绍了db2cli
命令的命令行选项,并给出了db2dsdriver.cfg
的示例。
如果您已经有一个具有本地和远程数据库的工作Db2配置(但没有db2dsdriver.cfg
文件(,您还可以使用工具db2dsdcfgfill
从现有Db2配置中填充db2dsdriver.cfg
。请参阅此处的文档。