【发布时间】:2014-02-15 03:01:41
【问题描述】:
我正在将我的应用程序移动到 AWS ElasticBeanStalk,并且在花费无数小时试图让我的数据库连接正常工作后,我一再失败。
第一次尝试,
我目前有一个正在使用的现有 RDS 数据库,我想继续使用它。我尝试用一个普通的旧 jdbc 连接来连接它,如下所示。
<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://masdfwe.czwweehqejmbr.us-east-1.rds.amazonaws.com:3306/project</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">xxxxx</property>
但是在日志中发现如下异常。
原因:java.sql.SQLException:找不到适合 jdbc:mysql://masdfwe.czwweehqejmbr.us-east-1.rds.amazonaws.com:3306/project 的驱动程序 在 java.sql.DriverManager.getConnection(DriverManager.java:596) 在 java.sql.DriverManager.getConnection(DriverManager.java:187) 在 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl.getConnection(DriverManagerConnectionProviderImpl.java:192) 在 org.hibernate.internal.AbstractSessionImpl$NonContextualJdbcConnectionAccess.obtainConnection(AbstractSessionImpl.java:278) 在 org.hibernate.engine.jdbc.internal.LogicalConnectionImpl.obtainConnection(LogicalConnectionImpl.java:297) ... 125 更多
mysql 驱动程序位于 lib 目录中,因此我不确定为什么会看到此异常。
我需要创建 JNDI 连接吗?如果是这样,我该如何更改 ElasticBeanStalk 上的 tomcat7 中的配置文件?我是想通过 ssh 进入 ec2 实例,还是进入 ElasticBeanStalk 实例?
我会在我的hibernate.cfg.xml 文件中使用类似的东西吗?
<property name="hibernate.connection.datasource">java:comp/env/jdbc/project</property>
web.xml
<resource-ref>
<description>MyDatabase Description</description>
<res-ref-name>jdbc/project</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
我只是不确定我应该在哪里或配置什么。任何帮助将不胜感激,我很困惑。
提前致谢。
【问题讨论】:
标签: mysql hibernate amazon-web-services tomcat7 amazon-elastic-beanstalk