java - 如何从 MATLAB 连接到 IBM Db2 Event Store?

标签 java matlab jdbc db2 ibm-event-store

是否可以从 MATLAB 连接到 IBM Db2 Event Store 实例?

最佳答案

IBM Db2 Event Store 2.0 支持标准 Db2 JDBC 驱动程序,因为它与 IBM Common SQL 引擎集成。然后使用 Database Explorer 连接到 MATLAB,我只是使用标准的 Db2 JDBC 连接和 Db2 JDBC 驱动程序:

  1. 确保您拥有在 MATLAB 中提供数据库资源管理器的数据库工具箱
  2. 首先转到 MATLAB 编辑器并键入:在命令行窗口中编辑 javaclasspath.txt,然后在该文件中添加从 IBM Data Server Client Packages page under the IBM Support website 下载的 Db2 JDBC 客户端驱动程序的文件路径。 :
  • 例如/<path where the JDBC jar was placed>/db2jcc4.jar
  1. (更新 javaclasspath.txt 后重新启动 MATLAB 或 look at this for reference)
  2. 转到 MATLAB 应用程序中的应用程序选项卡并选择数据库资源管理器
  3. 选择“配置数据源”并从下拉菜单中选择“配置 JDBC 数据源”
  4. 使用 IBM Knowledge Center for Event Store 中记录的说明通过 REST API 下载 SSL keystore 和密码,这是必要的,因为 IBM Db2 Event Store 配置了 SSL 和开箱即用的默认 keystore (如果您在安装后配置自己的 keystore ,这可能会改变)。
  5. 在 JDBC 数据源配置编辑器窗口中执行以下操作:
  • 为数据源输入任何新名称,例如EventStoreJDBC
  • 输入OTHER作为供应商
  • 对于驱动程序,输入:com.ibm.db2.jcc.DB2Driver
  • 在 URL 中,添加以下内容:jdbc:db2://<Your Event Store Cluster VIP>:18729/EVENTDB:sslConnection=true;sslTrustStoreLocation=<path to clientkeystore downloaded from cluster>;sslKeyStoreLocation=<path to clientkeystore downloaded from cluster>;sslKeyStorePassword=<password for clientkeystore retrieved from cluster>;sslTrustStorePassword=<password for clientkeystore retrieved from cluster>;securityMechanism=15;pluginName=IBMIAMAuth;
  • 然后点击窗口的任意部分,会弹出TEST按钮
  • 选择“测试”,系统会要求您提供用户 ID 和密码,您可以在其中输入系统的 eventstore 用户 ID 和密码(例如 adminpassword)
  • 然后您关闭窗口。

请注意,这些相同的说明可以在 IoT sample use case github repository for IBM Db2 Event Store 中找到

如何使用数据库对象执行相同的操作?

这是我尝试过的

conn = database('db2inst1','admin','password','com.ibm.db2.jcc.DB2Driver','jdbc:db2://<Your Event Store Cluster VIP>:18729/EVENTDB:sslConnection=true;sslTrustStoreLocation=<path to clientkeystore downloaded from cluster>;sslKeyStoreLocation=<path to clientkeystore downloaded from cluster>;sslKeyStorePassword=<password for clientkeystore retrieved from cluster>;sslTrustStorePassword=<password for clientkeystore retrieved from cluster>;securityMechanism=15;pluginName=IBMIAMAuth;');

这是我看到的

>> conn = database('db2inst1','admin','password','com.ibm.db2.jcc.DB2Driver','jdbc:db2://9.30.192.111:18729/EVENTDB:sslConnection=true;sslTrustStoreLocation=/Users/cmgarcia/Documents/MATLAB/eventstore/clientkeystore;sslKeyStoreLocation=/Users/cmgarcia/Documents/MATLAB/eventstore/clientkeystore;sslKeyStorePassword=Cc2cZ8TxdhWf;sslTrustStorePassword=Cc2cZ8TxdhWf;securityMechanism=15;pluginName=IBMIAMAuth;')

conn = 

  connection with properties:

                  DataSource: 'db2inst1'
                    UserName: 'admin'
                      Driver: 'com.ibm.db2.jcc.DB2Driver'
                         URL: 'jdbc:db2://9.30.192.111:1 ...'
                     Message: ''
                        Type: 'JDBC Connection Object'
  Database Properties:

                  AutoCommit: 'on'
                    ReadOnly: 'off'
                LoginTimeout: 0
      MaxDatabaseConnections: 0

  Catalog and Schema Information:

              DefaultCatalog: ''
                    Catalogs: {''}
                     Schemas: {'ADMIN', 'NULLID', 'NULLIDR1' ... and 12 more}

  Database and Driver Information:

         DatabaseProductName: 'DB2/LINUXX8664'
      DatabaseProductVersion: 'SQL110190'
                  DriverName: 'IBM Data Server Driver fo ...'
               DriverVersion: '4.26.14'

>> 

关于java - 如何从 MATLAB 连接到 IBM Db2 Event Store?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57297943/

相关文章:

java - 通常如何将 jdbc resultSet 映射到用户定义的类?

algorithm - 用给定的概率在MATLAB中计算协方差矩阵

performance - 通过空矩阵乘法初始化数组的更快方法? (Matlab)

java - JDBC 连接适用于 Windows 但不适用于 Ubuntu

java - 从文件 BufferedReader 获取文本,输出看起来不错,但不等于 "true"或 "false"(文件中的内容)

matlab - 强制 `unique` 将 NaN 视为不明确

java - 在中型 Web 应用程序中处理数据库连接的正确方法

java - 如何有效地将 JAVA 对象转换为 JSON..?

java - 如何退出循环或onClick(android)?

java - 如何禁用 JavaFX 中的上下文菜单?