【发布时间】: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