C3P0ConnectionProvider Проблема с Hibernate 3.6 - PullRequest
0 голосов
/ 16 ноября 2018

Я пытался настроить hibernate с помощью моей службы покоя для выполнения вызовов API в БД.Я настроил свойства соединения hibernate следующим образом.

    <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
    <property name="hibernate.connection.url">jdbc:oracle:thin:@ABCDHostname:12345:ABCDHost</property>
    <property name="hibernate.connection.driver_class">amazon.jdbc.driver.SecureDriver</property>
    <property name="hibernate.c3p0.min_size">2</property>
    <property name="hibernate.c3p0.max_size">5</property>
    <property name="hibernate.c3p0.acquireIncrement">2</property>
    <property name="hibernate.c3p0.initialPoolSize">2</property>
    <property name="hibernate.c3p0.timeout">36000</property>
    <property name="hibernate.c3p0.idle_test_period">300</property>
    <property name="hibernate.c3p0.preferredTestQuery">select 1 from dual</property>
    <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>

    <!-- Set the context of a session to enable the use of getCurrentSession() -->
    <property name="hibernate.current_session_context_class">thread</property>

</session-factory>

Я получаю имя пользователя и пароль БД из моей java-программы, которая является правильной и подтвержденной.

Проблема заключается в том, чтоКогда я запускаю эту программу, учетная запись сразу же блокируется на уровне БД, не зная, что является причиной этой проблемы.

Журналы ошибок имеют следующие состояния: - [java] 16 ноября 2018 00: 19: 25 920 [WARN] [] (C3P0PooledConnectionPoolManager [identityToken-> 2shhjy9z76iitk1d7keqo | 15be40d5] -HelperThread- # 0) com.mchange.v2.resourcepool.BasicResourcePool: com.mchange.v2.resourcepool.BasicResmptasquestОчистка в ожидании приобретений.При попытке получить необходимый новый ресурс нам не удалось достичь большего, чем максимальное количество разрешенных попыток приобретения (30).Исключение при последней попытке получения: [java] java.sql.SQLException: ORA-28000: учетная запись заблокирована

[java] 16 ноября 2018 00: 19: 25 924 [WARN] [] (http-nio-0.0.0.0-8001-exec-12) org.hibernate.util.JDBCExceptionReporter: Ошибка SQL: 0, SQLState: null [java] 16 ноября 2018 00: 19: 25 925 [ОШИБКА] [] (http-nio-0.0.0.0-8001-exec-12) org.hibernate.util.JDBCExceptionReporter: Соединения не могут быть получены из базовой базы данных![java] 16 ноя. 2018 00: 19: 25 925 [ОШИБКА] [] (http-nio-0.0.0.0-8001-exec-12) com.amazon.mytimeutilities.utils.mytime.PeoplePortalStagingCaller: org.hibernate.exception.GenericJDBCException: Невозможно открыть соединение [java] 16 ноября 2018 00: 19: 25 932 [ОШИБКА] [] (http-nio-0.0.0.0-8001-exec-12) org.apache.catalina.core.ContainerBase. [Tomcat].[java] org.jboss.resteasy.spi.UnhandledException: org.hibernate.exception.GenericJDBCException: Невозможно открыть соединение.

Любые указатели на возможные проблемы здесь.

Спасибо.

1 Ответ

0 голосов
/ 16 ноября 2018

Какой-то процесс пытается войти в эту учетную запись, используя неверный пароль. Предполагается, что учетная запись заблокирована, поскольку она превышает количество разрешенных неправильных входов в систему.

Вы можете разблокировать учетную запись, как показано ниже.

ALTER USER USER_NAME ACCOUNT UNLOCK;

См. ora-28000-the-account-заблокирован

...