MySQL Workbench: Як зберегти з'єднання живим


160

Код помилки: 2013. Втрачений зв’язок із сервером MySQL під час запиту

Я використовую MySQL Workbench. Крім того, я виконую партію вставок, загалом близько 1000 рядків (напр., INSERT INTO mytable SELECT * FROM mysource1; INSERT INTO mytable SELECT * FROM mysource2;...mysource3...mysource4Помножених 1000 разів). Кожна партія займає значну кількість часу, деякі з них - понад 600 секунд.

Як я можу налаштувати верстат, щоб продовжувати працювати протягом ночі, не зупиняючись і не втрачаючи зв'язку?

Відповіді:


343

З недоступного інтернет-архіву:

Перейдіть у меню Правка -> Налаштування -> Редактор SQL та встановіть цей параметр з більшим значенням: час очікування зчитування з'єднання СУБД (у секундах). Наприклад: 86400.

Закрийте і знову відкрийте MySQL Workbench. Убийте попередній запит, який, ймовірно, працює, і запустіть запит знову.


5
Помилка в усіх версіях MySQL Workbench понад 6.0.x на Mac OS: stackoverflow.com/a/37890150/1014813
lepix

6
Це працювало для мене, але довелося перезапустити редактор, щоб набути чинності.
cucu8

@lepix Виправлена ​​ця помилка?
posfan12

2
Для того, щоб це вступило в силу після зміни значень, потрібен перезапуск редактора.
philip oghenerobo balogun

46

Якщо ви використовуєте тип підключення "Стандартний TCP / IP через SSH", у розділі "Налаштування" -> "Інші" є поле "SSH KeepAlive". Знадобилося мені досить багато часу, щоб знайти його :(


Чому ти повторюєш відповідь?
Ян Догген

19
@JanDoggen Я не бачу жодної іншої відповіді, яка вказує на те, що в MySQL Workbench ви можете змінити "SSH KeepAlive", який за замовчуванням є 0 => вимкнено. Я бачу лише відповідь, яка передбачає змінити налаштування ssh сервера ...
Любітель

Дякуємо, що вказали на це, оскільки тут налаштування перекриває файли конфігурації клієнта ~ / .ssh / config та / etc / ssh / ssh_config Це абсолютна необхідність для мобільного широкосмугового зв’язку.
Родні

Чи можете ви, будь ласка, додати приклад цінності, який слід використовувати у своїй відповіді? Чи рекомендуєте ви щось на зразок 1800секунд?
AL

1
@AL це залежить від вашого контексту. У моєму випадку з'єднання SSH закінчується через 3 хвилини (180 секунд), тому я встановив SSH KeepAlive на 30 секунд.
Любітель

15

У 5.2.47 (принаймні на mac) перейдіть до місця розташування налаштувань: MySQLWorkbench-> Preferences-> SQL Editor

Тоді ви побачите обидва:

Інтервал збереження з'єднання СУБД (у секундах): час очікування зчитування з'єднання СУБД (у секундах):

Останнє - це те, коли ви захочете збільшити ліміт від 600 до чогось більше.


Я встановив час очікування зчитування для СУБД на 86400 секунд, після приблизно 7200 секунд запуску запиту я все одно отримую помилку 2013. Хтось знає про це щось?
IndexOutOfDevelopersException

12

У моєму випадку після спроби встановити тайм-аут SSH в командному рядку та в налаштуваннях локального сервера. @Ljubitel вирішив мені проблему.

Одним із зауважень є те, що в Workbench 6.2 налаштування зараз розширено

введіть тут опис зображення


2
В 6.3 розширений був перейменований на "Інші".
Річард

2

Якщо ви використовуєте тип підключення "Стандартний TCP / IP через SSH", можливо, ssh-сервер зберігає тайм-аут, і в цьому випадку вам доведеться редагувати відповідні налаштування TCPKeepAlive в / etc / ssh / sshd_config на вашому сервері .


2

Я отримував цю помилку 2013 року, і жодна з перерахованих вище налаштувань не зробила нічого, щоб вирішити проблему. Я перезапустив службу mysql, і проблема пішла.


2

Гаразд - тому ця проблема зводила мене з розуму - v 6.3.6 на Ubuntu Linux. Жодне з перерахованих вище рішень не працювало для мене. Підключення до локального серверу mysql раніше завжди добре працювало. Підключення до віддаленого сервера завжди вичерпано - приблизно через 60 секунд, іноді через менший час, іноді більше.

Нарешті для мене працювало модернізація Workbench до 6.3.9 - більше не впало з'єднань.


1

У мене була подібна проблема, коли CREATE FULLTEXTчас вичерпався через 30 секунд:

помилка

Встановлення інтервалу очікування зчитування підключення СУБД до 0 у меню Правка -> Налаштування -> Редактор SQL вирішив проблему для мене:

виправити помилку

Крім того, мені не довелося перезавантажувати робочий стіл mysql, щоб це працювало.


0

в mysql-workbech 5.7 редагувати-> налаштування-> SSH -> тайм-аут підключення SSH Connect (для підключення SSH DB) введіть тут опис зображення

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.