在WildFly 中配置MySql
Posted
技术标签:
【中文标题】在WildFly 中配置MySql【英文标题】:Configuring MySql inWildFly 【发布时间】:2014-12-24 18:23:20 【问题描述】:我按照步骤尝试在 WildFly 中配置 mysql。我有两个问题想请教:
1) 我下载了 mysql-connector-java-5.1.33-bin.jar 并将其放在 modules/system/layers/base/com/mysql/main/ 下。我需要下载实际的 MySql 吗?还是connector jar就够了?
2) 在 WildFly 控制台中创建新数据源时,我无法创建新数据源。我需要填写的部分信息是访问数据库的一对用户名和密码。我应该先在哪里创建这个用户名和密码?我猜这就是我遇到问题的地方。
我在 Wildfly 控制台中测试连接时收到此错误消息:
Unexpected HTTP response: 500
Request
"address" => [
("subsystem" => "datasources"),
("data-source" => "mysqlDSPool")
],
"operation" => "test-connection-in-pool"
Response
Internal Server Error
"outcome" => "failed",
"failure-description" => "JBAS010440: failed to invoke operation: JBAS010447: Connection is not valid",
"rolled-back" => true
【问题讨论】:
【参考方案1】:首先你需要安装Mysql服务器和一个JDBC 4兼容的驱动,一般Mysql.org提供的所有新的JDBC都是JDBC 4兼容的,找一个平台无关的here,然后你需要在这里添加一个数据源在此文件中,standalone/configuration/standalone.xml 或使用此命令
data-source add --name=myDataSource--jndi-name="java:jboss/datasources/myDataSource" \
--connection-url="jdbc:mysql://localhost:3306/myDB" \
--driver-name=h2 --user-name="myDB_Username" --password="myPassword"
用户名和密码是用来连接Mysql数据库的。
【讨论】:
【参考方案2】:1) 您需要下载 jdbc-driver jar,我认为它是连接器 jar。但请不要放在modules/system/...下,而是直接放在modules下,因为system文件夹是为服务器自带的内部模块保留的。
2) 下面是一个示例(配置 Oracle 数据源):
/subsystem=datasources/jdbc-driver=OracleJdbcDriver:add(driver-module-name=oracle.jdbcaq,driver-name=OracleJdbcDriver)
/subsystem=datasources/data-source=OracleDS:add(jndi-name=java:jboss/datasources/OracleDS,enabled=true,jta=true,use-java-context=true,connection-url=jdbc:oracle:oci:@dbms:1523/DEV,driver-name=OracleJdbcDriver,min-pool-size=5,max-pool-size=100,user-name=username,password=password,prepared-statements-cache-size=100,exception-sorter-class-name=org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter)
【讨论】:
除了连接器jar之外,我想我还需要下载MySql服务器和客户端并安装它。正确的?不然单用连接器不行吗? 是的,当然你需要安装数据库服务器才能使用它;)以上是关于在WildFly 中配置MySql的主要内容,如果未能解决你的问题,请参考以下文章