Maison  >  Questions et réponses  >  le corps du texte

Comment afficher les transactions en cours dans MySQL

<p>J'ai exécuté quelques requêtes sans les soumettre. L'application est alors arrêtée. </p> <p>Comment puis-je afficher ces transactions ouvertes et les soumettre ou les annuler ? </p>
P粉176151589P粉176151589441 Il y a quelques jours453

répondre à tous(2)je répondrai

  • P粉463824410

    P粉4638244102023-08-28 11:18:36

    Bien qu'il n'y ait plus de transactions restantes dans ce cas, comme @Johan l'a dit, si vous le souhaitez, vous pouvez consulter la liste actuelle des transactions dans InnoDB via la requête ci-dessous.

    从 information_schema.innodb_trxG 中选择*

    De Documents :

    répondre
    0
  • P粉726133917

    P粉7261339172023-08-28 09:36:30

    Sans transaction ouverte, MySQL annulera la transaction lors de la déconnexion.
    Vous ne pouvez pas valider la transaction (IFAIK).

    Vous affichez les fils de discussion en utilisant

    SHOW FULL PROCESSLIST

    Voir : http://dev.mysql.com/doc/refman/5.1/en/thread-information.html

    Cela ne vous aidera pas car vous ne pouvez pas valider de transactions à partir d'une connexion interrompue.

    Que se passe-t-il lorsque la connexion est interrompue
    Extrait de la documentation MySQL : http://dev.mysql.com/doc/refman/5.0/en/mysql-tips.html

    Voir aussi : http://dev.mysql.com/doc/refman/5.0/en/auto-reconnect.html

    Comment diagnostiquer et résoudre ce problème
    Vérifiez la reconnexion automatique :

    Assurez-vous de conserver la dernière requête (transaction) dans le client afin de pouvoir la soumettre à nouveau si nécessaire.
    et désactivez le mode de reconnexion automatique car cela est dangereux, implémentez plutôt votre propre reconnexion afin de savoir quand une chute se produit et de pouvoir soumettre à nouveau cette requête.

    répondre
    0
  • Annulerrépondre