web-dev-qa-db-fra.com

MySQL Workbench: Comment garder la connexion en vie

Code d'erreur: 2013. Connexion perdue au serveur MySQL lors d'une requête

J'utilise MySQL Workbench. En outre, je lance un lot d'insertions, environ 1000 lignes au total (Ex. INSERT INTO mytable SELECT * FROM mysource1; INSERT INTO mytable SELECT * FROM mysource2;...mysource3...mysource4 multiplié par 1000) Chaque lot prend beaucoup de temps, certaines d'entre elles, plus de 600 secondes.

Comment puis-je configurer Workbench pour continuer à travailler toute la nuit, sans s'arrêter et sans perdre la connexion?

133
Omar

Depuis maintenant non disponible archive Internet:

Sélectionnez Edition -> Préférences -> Editeur SQL et définissez une valeur plus élevée sur ce paramètre: délai de lecture de la connexion au SGBD (en secondes). Par exemple: 86400.

Fermez et rouvrez MySQL Workbench. Tuez votre requête précédente qui est probablement en cours d'exécution et réexécutez la requête.

284
Ignacio

Si vous utilisez un type de connexion "Standard TCP/IP sur SSH", sous "Préférences" -> "Autres", vous trouverez le champ "SSH KeepAlive". Il m'a fallu un certain temps pour le trouver :(

41
Ljubitel

Dans la version 5.2.47 (du moins sur mac), l'emplacement des préférences est: MySQLWorkbench-> Préférences-> Editeur SQL

Ensuite, vous verrez les deux:

Intervalle persistant (en secondes) de la connexion à un SGBD: délai de lecture de la connexion à un SGBD (en secondes):

Dans ce dernier cas, vous voulez augmenter la limite de 600 à un peu plus.

13
jidulberger

Dans mon cas, après avoir essayé de définir le délai d'attente SSH sur la ligne de commande et dans les paramètres du serveur local. La solution de @Ljubitel a résolu le problème de moi.

Un point à noter est que dans Workbench 6.2 le paramètre est maintenant sous avancé

enter image description here

9
Abelgo

Si vous utilisez un type de connexion "TCP/IP standard sur SSH", il est possible que le serveur ssh continue à expirer. Dans ce cas, vous devrez modifier les paramètres liés à TCPKeepAlive dans/etc/ssh/sshd_config sur votre serveur. .

2

Je recevais cette erreur en 2013 et aucune des modifications de préférence ci-dessus n'a fait quoi que ce soit pour résoudre le problème. J'ai redémarré le service mysql et le problème a disparu.

2
Neal Garrett

OK - ce problème me rend fou - v 6.3.6 sur Ubuntu Linux. Aucune des solutions ci-dessus n'a fonctionné pour moi. Se connecter au serveur localhost mysql fonctionnait toujours bien auparavant. La connexion au serveur distant a toujours expiré - après environ 60 secondes, parfois après moins de temps, parfois plus.

Ce qui a finalement fonctionné pour moi, c’est la mise à niveau de Workbench vers la version 6.3.9 - plus aucune connexion perdue.

2
Chris Dav

J'ai eu un problème similaire où CREATE FULLTEXT a expiré après 30 secondes:

error

La définition de l'intervalle de délai de lecture des connexions SGBD sur 0 sous Edition -> Préférences -> Editeur SQL a résolu le problème pour moi:

fix error

De plus, je n'ai pas eu besoin de redémarrer mysql workbench pour que cela fonctionne.

1
kimbaudi

dans mysql-workbech 5.7 edit-> preference-> SSH -> SSH Connect timeout (pour la connexion SSH DB) enter image description here

0
junior_software