0

プログラムで休止状態を構成し、MySQL でデータベース スキーマとテーブルを生成しようとしています。これが休止状態の設定です

 configuration.setProperty(AvailableSettings.DIALECT, "org.hibernate.dialect.MySQL5Dialect")
            .setProperty(AvailableSettings.URL, "jdbc:mysql://localhost/ritm?autoReconnect=true&characterEncoding=UTF-8&useUnicode=true&createDatabaseIfNotExist=true")
            .setProperty(AvailableSettings.USER, "root")
            .setProperty(AvailableSettings.PASS, "gjnjkjr")
            .setProperty(AvailableSettings.DRIVER, "com.mysql.jdbc.Driver")
            .setProperty(AvailableSettings.POOL_SIZE,"1");

Mavenで実行すると、次のWARNが表示されました

WARN: HHH000342: Could not obtain connection to query metadata : Could not create connection to database server. Attempted reconnect 3 times. Giving up.

その後、例外

апр 04, 2013 10:31:53 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 0, SQLState: 08001
апр 04, 2013 10:31:53 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
org.hibernate.exception.JDBCConnectionException: Could not open connection
    at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:67)

誰もこれを説明できますか?

4

1 に答える 1

0

URL にポート番号を追加してみましたか。ばかげているように思えますが、データベース通信はポート番号に依存しており、URL にポート番号が含まれていないことに気付きました。たとえば、MySQL を使用している場合、ポート番号は 3306 です。したがって、JDBC URL は次のようになります。

AvailableSettings.URL, "jdbc:mysql://localhost:3306/ritm?autoReconnect=true&characterEncoding=UTF-8&useUnicode=true&createDatabaseIfNotExist=true"
于 2013-04-04T18:54:06.127 に答える