gpt4 book ai didi

ruby-on-rails - 使用 Ruby on Rails 设置 DB2 数据库

转载 作者:行者123 更新时间:2023-12-01 18:33:54 31 4
gpt4 key购买 nike

我正在尝试使用 ibm_db gem 与 DB2 数据库和我的 Rails 应用程序建立连接。然而,许多可用的文档 a) 非常旧,b) 对我来说技术性太强,无法理解。安装 gem 后,我使用指定的结构更新了我的开发数据库 here但是当我尝试启动 Rails 数据库时,我收到错误:

无法连接到 [XXXXXX],原因是:未捕获 throw :"连接失败:[IBM][CLI 驱动程序] SQL1531N 连接失败,因为在 db2dsdriver.conf 中找不到使用 DSN 连接字符串关键字指定的名称。 cfg 配置文件或 db2cli.ini 配置文件。连接字符串中指定的数据源名称:\"XXXXXXXX\"。SQLCODE=-1531"(RuntimeError)

我知道这意味着我需要创建一个 db2dsdriver.cfg 文件,但不确定从哪里开始如何创建它以及在哪里保存它。文件说我应该根据 gem 附带的 .sample 文件对其进行建模,但我不确定哪些信息在哪里。您可以看到下面的示例文件:

<configuration>
<dsncollection>
<dsn alias="alias1" name="name1" host="server1.net1.com" port="50001"/>
<!-- Long aliases are supported -->
<dsn alias="longaliasname2" name="name2" host="server2.net1.com" port="55551">
<parameter name="Authentication" value="SERVER_ENCRYPT"/>
</dsn>
</dsncollection>
<databases>
<database name="name1" host="server1.net1.com" port="50001">
<parameter name="CurrentSchema" value="OWNER1"/>
<wlb>
<parameter name="enableWLB" value="true"/>
<parameter name="maxTransports" value="50"/>
</wlb>
<acr>
<parameter name="enableACR" value="true"/>
</acr>
<specialregisters>
<parameter name="CURRENT DEGREE" value="'ANY'"/>
</specialregisters>
<sessionglobalvariables>
<parameter name="global_var1" value="abc"/>
</sessionglobalvariables>
</database>
<!-- Local IPC connection -->
<database name="name3" host="localhost" port="0">
<parameter name="IPCInstance" value="DB2"/>
<parameter name="CommProtocol" value="IPC"/>
</database>
</databases>
<parameters>
<parameter name="GlobalParam" value="Value"/>
<!-- Client configuration for Optim Performance Manager Extended Insight (OPM EI) and Optim Configuration Manager (OCM)-->
<!-- <parameter name="connectionSupervisorLibrary" value="/home/pureQuery/pqcmx"/> -->
<!-- <parameter name="connectionSupervisorProperties" value="controllerURL=server1.net1.com:65000,httpControllerURL=http://ibmdatacmserver:12206,cmxUUID=myuuid"/> -->
</parameters>
</configuration>

最佳答案

我知道这是一篇旧帖子,但今天偶然发现了它。

您能否让我们知道您在database.yml 文件中指定的内容。

您不必担心在 dsdriver.cfg 中指定数据库和相关信息,您可以直接在 database.yml 中指定,它将被拾取。

您的database.yml 文件应如下所示(假设您使用的是Rails 4)

default: &default
adapter: ibm_db
username: praveen
password: *******
#schema: db2inst1
#host: localhost
#port: 50000
#account: my_account
#app_user: my_app_user
#application: my_application
#workstation: my_workstation
#security: SSL
#timeout: 10
#authentication: SERVER
#parameterized: false

development:
<<: *default
database: railsdb

您需要根据相应的 key 指定数据库、端口、主机、用户名和密码详细信息。如果您不确定database.yml中的部分实际上应该是什么样子,只需使用以下命令创建您的rails应用程序

rails 新 myapp -d ibm_db

-d 选项生成特定于 ibm_db 的 database.yml 框架

谢谢

普莱文

关于ruby-on-rails - 使用 Ruby on Rails 设置 DB2 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25689477/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com