【问题标题】:IBM Worklight - "Could not connect to database" error messageIBM Worklight - “无法连接到数据库”错误消息
【发布时间】:2014-01-17 05:06:08
【问题描述】:

我一直在尝试通过我的 SQL 适配器连接 MySQL,但我不断收到以下错误:

无法连接到数据库。无法创建 PoolableConnectionFactory (连接被拒绝。检查主机名和端口是否正确,并且 邮局主管正在接受 TCP/IP 连接。)。 [项目 SampleWorklightApp]

我的适配器 XML:

<?xml version="1.0" encoding="UTF-8"?>
<wl:adapter name="sampleSQLAdapter" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:wl="http://www.worklight.com/integration" xmlns:sql="http://www.worklight.com/integration/sql">

  <displayName>sampleSQLAdapter</displayName>
  <description>sampleSQLAdapter</description>
  <connectivity>
    <connectionPolicy xsi:type="sql:SQLConnectionPolicy">
      <!-- Example for using a JNDI data source, replace with actual data 
        source name -->
      <!-- <dataSourceJNDIName>java:/data-source-jndi-name</dataSourceJNDIName> -->

      <!-- Example for using MySQL connector, do not forget to put the MySQL 
        connector library in the project's lib folder -->
      <dataSourceDefinition>
        <driverClass>com.mysql.jdbc.Driver</driverClass>
        <url>jdbc:mysql://127.0.0.1:3306/test</url>
        <user>root</user>
        <password>sanchit</password>
      </dataSourceDefinition>
    </connectionPolicy>
    <loadConstraints maxConcurrentConnectionsPerNode="5" />
  </connectivity>

  <!-- Replace this with appropriate procedures -->
  <procedure name="getCustomerName" />
  <procedure name="insertCustomerDetails" />
</wl:adapter>

使用:

  • 操作系统平台:Mac OSX 10.8
  • Eclipse:Kepler 服务版本 1
  • Worklight:第 6 版开发人员版
  • MySQL:mysql-connector-java-5.1.28-bin.jar 1.6.0_65

【问题讨论】:

  • 连接mysql有两种方式,一种是使用网络(地址和端口),一种是使用socket文件。根据您安装 mysql 的方式和版本,网络被禁用(它类似于默认情况下无法从外部访问 mysql 的安全功能),所以第一步是检查 mysql 是否正在运行,然后检查网络是否处于活动状态对于 mysql 或更改连接类型以使用文件套接字。
  • 仔细检查主机(尝试“localhost”...)端口、数据库名称、防火墙设置(尝试禁用它)。
  • 有时重启机器也有帮助……也试试吧。
  • @t.niese:MYSQL 正在运行,并且 MYSQL 的网络也处于活动状态。我不知道套接字文件。你能告诉我如何使用套接字文件解决它。
  • @idan Adar:我确实尝试过重启我的机器但仍然无法连接它。你能指导我吗?

标签: mysql macos ibm-mobilefirst worklight-adapters


【解决方案1】:

看看以下是否有帮助:

  1. 尝试“localhost”而不是“127.0.0.1”。

    当您连接到“localhost”时,使用套接字连接器,但是当您连接到“127.0.0.1”时,使用 TCP/IP 连接器 (source)。

    从问题中的错误消息来看,TCP/IP 连接似乎有问题......所以也试试“localhost”。

  2. 根据问题中cmets讨论中粘贴的信息,您可以尝试以下解决方案:

【讨论】:

    猜你喜欢
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    • 1970-01-01
    • 2013-03-05
    • 2013-09-04
    • 1970-01-01
    相关资源
    最近更新 更多