Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / mysql jdbc-коннектор не переподключается. / 5 сообщений из 5, страница 1 из 1
18.03.2013, 18:40:49
    #38188559
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mysql jdbc-коннектор не переподключается.
Ставим для теста в my.cnf
wait_timeout = 10

тестовая прога

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
    public static void main(String[] args) throws InstantiationException, ClassNotFoundException, IllegalAccessException, SQLException, InterruptedException {

        
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/proba?&autoReconnect=true&maxReconnects=10&user=test&password=test");
            
            Thread.sleep(12000);
            
            Statement st = connection.createStatement();
            ResultSet rs = st.executeQuery("SELECT max(unixtime) FROM history_descrete");
            try{
                rs.next();
                
                System.out.println("max ut ="+rs.getString(1) );
                
            }finally{
                st.close();
            }

    }




Несмотря на autoReconnet=true, попытка выполнить запрос бросает Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.CommunicationsException

Как исправить, не доделывая в реконнекты, чтобы их делал сам драйвер? Транзакций в базу - нет, но и отключать wait_timeout не хочется.
...
Рейтинг: 0 / 0
18.03.2013, 18:48:26
    #38188575
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mysql jdbc-коннектор не переподключается.
То что вы хотите как-то слабо связано с тем что про autoReconnect говориться в документации. Пул обычно делают с валидацией соединений для решения такой задачи.
...
Рейтинг: 0 / 0
18.03.2013, 19:06:51
    #38188602
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mysql jdbc-коннектор не переподключается.
А если вдруг соединение будет вытащено из пула, но во время работы с ним произойдет отключение? Существует ли метод на уровне драйвера "прозрачно" для приложения переподключиться?

а то это же что получается - делать что ли свой класс-обертку Satement, которой умеет делать реконнекты?
...
Рейтинг: 0 / 0
18.03.2013, 19:09:35
    #38188607
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mysql jdbc-коннектор не переподключается.
А зачем? Откатилась транзакция - повторили.
...
Рейтинг: 0 / 0
18.03.2013, 19:28:14
    #38188643
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mysql jdbc-коннектор не переподключается.
мне хочется, чтобы (например) при перезапуске mysql оно само переподключалось. Транзакции мне не нужны. Каждый отдельный инсерт и так атормарно цел.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / mysql jdbc-коннектор не переподключается. / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]