0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 25

Ошибка соединения

22.09.2013, 19:50. Показов 1078. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Возникла непонятная ошибка соединения.
Суть программы в том что она берет значение из одной таблицы и сравнивает ее с другим значением из другой таблицы. Запускаем, начинает работать, после того как отработала почти всю таблицу, выскакиевает ошибка com.mysql.jdbc.exceptions.jdbc4.Communic ationsException: Communications link failure и далее валится resultset и следовательно выборка данных больше не идет, и все ложится отдыхать.
так вот, мб кто подскажет решение такой проблемы?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.09.2013, 19:50
Ответы с готовыми решениями:

[odbc] Ошибка соединения
Добрый день, хочу узнать как решить данную проблему. Мой код, подключается к СУБД и создаёт несколько БД - DB_1 и DB_2. (создание баз...

Ошибка соединения с базой данных
Не подскажите в чём проблема? Пытаюсь подключиться к базе данных. package Main; import java.sql.*; public class Main { ...

Ошибка "ExecuteReader требует открытого и доступного соединения. Текущее состояние соединения закрыто. "
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.OleDb; using System.Data;...

7
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 25
24.09.2013, 15:30  [ТС]
в общем проблему удалось решить остановкой потока на 10 секунд после каждых 500 строк, но вопрос остаётся открытым, с чего вдруг БД терять соединение..
0
352 / 162 / 20
Регистрация: 22.12.2011
Сообщений: 352
24.09.2013, 15:47
xpresiq, в таком случае вы бы код привели, а то так сложно понять, что там у вас.
0
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 25
25.09.2013, 11:57  [ТС]
весь код приводить не буду, конкретно куски в которых валится все.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
i
public class search {
    public static void main(String[] args) {
        DB db = new DB("note", "jdbc:mysql://localhost:3306/", "root", "12345");
        ResultSet rs = db.query("таблица 1");
        StringTokenizer str = null;
        String code = null;
        try {
            while (rs.next()) {
 
                str = new StringTokenizer(rs.getString(2), " \t\n\r");
                while (str.hasMoreTokens()) {
                    if (str.nextToken().toString()
                            .equalsIgnoreCase((all().toString()))) {
 
                        System.out.println(rs.getString(2) + "           " + i);
 
                    }
                }
                i++;
            }
        } catch (SQLException e) {
            System.out.println("opa");
        }
        //db.close();
    }
 
    public static String all() {
        DB db = new DB("note", "jdbc:mysql://localhost:3306/", "root", "12345");
 
        ResultSet rs = db.query("таблица 2");
        try {
            while (rs.next()) {
                code = rs.getString(3).toString();
            
            }
        } catch (SQLException e) {
            System.out.println("opa");
        }
        // db.close();
        return code;
 
    }
 
}
"голый" код сравнения.
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
25.09.2013, 14:09
а ну понятно, вы просто создаёте кучу конектов и в какойто момент срабатывает ограничение на количество соединений
почитайте про пулы конектов к базе и перепишите код
0
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 25
25.09.2013, 14:17  [ТС]
Цитата Сообщение от mutagen Посмотреть сообщение
а ну понятно, вы просто создаёте кучу конектов и в какойто момент срабатывает ограничение на количество соединений
почитайте про пулы конектов к базе и перепишите код
Ну я как бы ожидал ответа на подобии такого, только вот встает вопрос, как быть когда это все находится в разных классах, это ведь для примера все в куче. Если один класс, там делаешь выборку из нескольких таблиц и вперед с песней.При изучении jdbc когда то давно, препод как то сказал что нужно открывать и закрывать соединение при каждой операции(открыл-взял что надо-закрыл). В конкретном случае, я не представляю как можно уменьшить количество коннектов к базе если одни данные тут, а вторые там...
0
3 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 8
25.09.2013, 14:18
Ну я как бы ожидал ответа на подобии такого, только вот встает вопрос, как быть когда это все находится в разных классах, это ведь для примера все в куче. Если один класс, там делаешь выборку из нескольких таблиц и вперед с песней.При изучении jdbc когда то давно, препод как то сказал что нужно открывать и закрывать соединение при каждой операции(открыл-взял что надо-закрыл). В конкретном случае, я не представляю как можно уменьшить количество коннектов к базе если одни данные тут, а вторые там...
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
25.09.2013, 14:29
представьте себе класс у которого есть 20 соединений и вы их у него гет и ретурн, и вовсе не надо их закрывать, просто переиспользовать, ну на гет например повесить эксепшен NoFreeConection и ловить его, вешать поток в таймаут и после истечения пробовать ещё раз
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.09.2013, 14:29
Помогаю со студенческими работами здесь

Ошибки СУБД: ошибка выделения памяти. Ошибка соединения с сервером 1С
Здравствуйте! Есть один сервер. На нем стоит MS SQL, 1С сервер и терминально подключаются пользователи через RDP (до 80 пользователей). ...

Ошибка соединения
Не открывается сайт Microsoft, тем самым не могу обновится. windpows/system32/drivers/etc проверял, hosts файл удалил. Все равно....

Ошибка соединения с БД
Здравствуйте. У меня следующая проблема: При попытке соединиться с БД ошибка "невозможно установить соединение". Все пишу...

Ошибка соединения с БД
Здравствуйте! Я начала изучать технологию ado.net, C# тоже изучаю с недавнего времени. Создаю приложение на C#, которое должно выгружать...

Ошибка соединения с бд
Всем добрый день! Пытаюсь соединится с БД и выдает такую ошибку: Ошибка сервера в приложении '/'. Ошибка входа пользователя...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
Взаимодействие Python с REST API
py-thonny 27.03.2025
REST API - это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. Python располагает функциональным набором инструментов для работы с REST API и основная библиотека для. . .
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru