Я столкнулся с проблемой объединения пулов Oracle через OracleConnectionCacheImpl. Когда я подключаюсь к пулу подключений на моем сервере базы данных (Oracle 10g) через тонкий драйвер, все работает нормально, пока после неопределенного времени соединение db не будет удалено (возможно, из-за неработающих соединений?), И я получаю сообщение об ошибке:Как автоматически повторно подключить пул соединений Oracle после прерывания соединения?
Закрытое подключение.
Обновление страницы и повторное подключение к сети повторно соединяет базу данных, поэтому она не кажется проблемой для сети или базы данных. Является ли способ пула соединений Oracle проверять его соединение и повторно подключаться, если соединение в пуле по какой-либо причине мертво?
Я использую Apache Tomcat 6.0.18, Java EE6 обновление 11.
(Там, кажется, функция пинг в тонком драйвере Oracle. Значит ли это помощь, и где я могу его найти?)
1) Вы можете добавить всю трассировку стеки для закрытого подключения 2) Вы установили InactivityTimeout, TimeToLiveTimeout или AbandonedConnectionTimeout любых значения не по умолчанию? 3) Используете ли вы ValidateConnection? –
4) Физические соединения между сервером приложений и сервером БД обрезаются на сетевом уровне, например. через брандмауэр? –
Где установить эти параметры? Я новичок в программировании Oracle, поэтому я не уверен, где найти эти параметры. Где я могу найти ValidateConnection и принудительно повторно подключиться? (Просто обновляя мой браузер сразу после того, как я вижу, что ошибка сразу исправит. Я не уверен, что это проблема брандмауэра.) – futureelite7