Когда я соединяюсь с этим кодом на моем Linux (Ubuntu 11.10) с MySQL версии 5.1, он работает нормально, но когда я хочу запустить свое приложение на Windows OS (Windows 7 с MySQL 5.5), он вызывает исключение:
org.hibernate.exception.GenericJDBCException: Cannot open connection
В обоих случаях я заходил на локальный хост.
Я попытался войти в систему от имени пользователя root. У меня есть полная уверенность, что это был правильный пароль.
Я пытался настроить все права на нового пользователя, но это было то же исключение.
Другой вариант, который я попробовал, состоял в том, что я ловлю GenericJDBCException
, и программа дает мне это:
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
Я подключаюсь к базе данных программно (через Hibernate AnnotationConfiguration):
annotationConfiguration = new AnnotationConfiguration();
annotationConfiguration.setProperty("hibernate.hbm2ddl.auto", "create");
// add annotatedClasses
annotationConfiguration.addAnnotatedClass(X.class);
annotationConfiguration.setProperty("hibernate.dialect", "net.sf.hibernate.dialect.MySQLDialect");
annotationConfiguration.setProperty("hibernate.connection.driver_class", "com.mysql.jdbc.Driver");
annotationConfiguration.setProperty("hibernate.connection.url", "jdbc:mysql://" + host + ":3306/" + database);
annotationConfiguration.setProperty("hibernate.connection.username", userName);
annotationConfiguration.setProperty("hibernate.connection.password", password);
annotationConfiguration.setProperty("hibernate.connection.release_mode", "auto");
//annotationConfiguration.setProperty("hibernate.query.factory_class", "org.hibernate.hql.classic.ClassicQueryTranslatorFactory");
if (StaticConstants.DEBUG) {
annotationConfiguration.setProperty("hibernate.show_sql", "true");
} else {
annotationConfiguration.setProperty("hibernate.show_sql", "false");
}
annotationConfiguration.configure();
sessionFactory = annotationConfiguration.buildSessionFactory();
sessionFactory.close();
Я использую Hibernate версии 3.6.7, но я протестировал его на Hibernate 3.6.8 через класс Configuration, и это был тот же результат.
Так что мой вопрос: есть ли у кого-то такая же проблема и решить ее, или у кого-нибудь есть идеи, чтобы решить ее?
Спасибо