Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Webapp无法在openshift上连接mysql_Java_Mysql_Web_Openshift - Fatal编程技术网

Java Webapp无法在openshift上连接mysql

Java Webapp无法在openshift上连接mysql,java,mysql,web,openshift,Java,Mysql,Web,Openshift,我是新来的openshift。我在openshift上创建了Tomcat7(JBoss EWS 2.0)应用程序来托管我的webapp。现在我正在部署我的war文件,我面临一个错误 我的web应用无法连接到mysql。错误如下: java.sql.SQLException: Access denied for user 'admink5J5aXX'@'127.x.x.x' (using password: YES) 这是我的连接配置: <bean id="dataSource" clas

我是新来的openshift。我在openshift上创建了Tomcat7(JBoss EWS 2.0)应用程序来托管我的webapp。现在我正在部署我的war文件,我面临一个错误

我的web应用无法连接到mysql。错误如下:

java.sql.SQLException: Access denied for user 'admink5J5aXX'@'127.x.x.x' (using password: YES)
这是我的连接配置:

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">
    <property name="driverClassName" value="com.mysql.jdbc.Driver" />
    <property name="url" value="${db.url}" />
    <property name="username" value="${db.username}" />
    <property name="password" value="${db.username}" />
</bean>
用户、密码和主机由OpenShift提供

env | grep MYSQL
OPENSHIFT_MYSQL_DB_PORT=3306
OPENSHIFT_MYSQL_DB_HOST=127.x.x.x
OPENSHIFT_MYSQL_DB_PASSWORD=password
OPENSHIFT_MYSQL_IDENT=redhat:mysql:5.5:0.2.20
OPENSHIFT_MYSQL_DB_USERNAME=admink5J5aXX
OPENSHIFT_MYSQL_DB_URL=mysql://admink5J5aXX:password@127.x.x.x:3306/
OPENSHIFT_MYSQL_VERSION=5.5
我尝试更改
db.url=jdbc:mysql://127.x.x.x:3306/myapp
to
db.url=jdbc:mysql://127.0.0.1:3306/myapp
db.url=jdbc:mysql://localhost:3306/myapp
jdbc:mysql://${OPENSHIFT\u mysql\u DB\u HOST}:${OPENSHIFT\u mysql\u DB\u PORT}/${OPENSHIFT\u APP\u NAME}
但我仍然出错,我的webapp无法工作

更新:

mysql> select user, host from mysql.user;
+--------------+-------------+
| user         | host        |
+--------------+-------------+
| admink5J5aXX | %           |
| admink5J5aXX | 127.x.x.x   |
+--------------+-------------+
是否有人可以解决此错误的根本原因?请帮忙(

提前谢谢


p/s:我的英语不好

在这种情况下存在连接配置错误;用户名用作密码:

<property name="password" value="${db.username}" />

……应改为:

<property name="password" value="${db.password}" />


您是否能够通过ssh连接到应用程序(或使用端口转发)并使用相同的凭据访问mysql数据库?这是一个扩展应用程序吗?您尝试访问的数据库是否与代码属于同一应用程序的一部分?很抱歉,响应太晚,@corey112358。我已经下班回来了。是的,我能够通过ssh连接到我的应用程序,并在使用port forward时连接到mysql数据库。我的应用程序on不是scale。我试图访问的数据库是我的应用程序的一部分。您的连接配置使用db.username作为密码
;这只是这个问题中的一个输入错误,还是您部署了相同的数据库?哦,不!!这是我的错误,部署的代码中也是一样的。非常感谢@JiriFiala。我已经添加了我的评论作为答案然后,我想结束这个问题。很高兴我能帮上忙。
<property name="password" value="${db.password}" />