ec2 + tomcat + mysql Доступ запрещен! - PullRequest
0 голосов
/ 02 июля 2011

Я использую tomcat6 и mysql5 на одном экземпляре ec2 и не могу этого сделать из внешнего мира.

Мой context.xml на tomcat в ec2 ...

<bean id="dataSource" class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource">
    <property name="url" value="jdbc:mysql://ec2-xx-xx-xxx-178.compute1.amazonaws.com:3306/data_dbo" />
    <property name="user" value="a_user" />
    <property name="password" value="a_password" />
</bean>

Client context.xml

 <bean id="myService" class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
        <property name="serviceUrl" value="http://ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com:8080/MyService-services/remoting/thingServiceExporter"/>
        <property name="serviceInterface" value="com.things.services.MyService"/>
    </bean>

Ошибка в клинике ...

Caused by: java.sql.SQLException: Access denied for user ''@'domU-xx-xx-xx-xx-xx-DB.compute-1.internal' (using password: NO)

У меня есть права на установку для моего пользователя, но, похоже, он не использует пользователя, которого я настроил в моем источнике данных tomcat. Я говорю это из-за ошибки на клиенте (доступ запрещен для пользователя '' @): нет пользователя, нет пароля. Нужно ли мне что-то настраивать между tomcat и mysql на ec2 , потому что кажется, что он использует внутренние dns для доступа к MySql?

Дайте мне знать, могу ли я предоставить любую другую информацию!

1 Ответ

1 голос
/ 05 июля 2011

Я нашел проблему.В моем файле persistance.xml был следующий код ...

 <properties>
      <property name="hibernate.connection.username" value=""/>
      <property name="hibernate.connection.driver_class" value=""/>
      <property name="hibernate.connection.password" value=""/>
      <property name="hibernate.connection.url" value=""/>
    </properties>

Не уверен, как это получилось!Параметры в файле persistance.xml должны переопределять параметры в моем контекстном файле Spring.

...