Maison  >  Article  >  base de données  >  Quel est l'impact des transactions longues dans MySQL

Quel est l'impact des transactions longues dans MySQL

WBOY
WBOYavant
2023-06-03 15:13:041757parcourir

1. Les transactions longues signifient qu'il y aura une très ancienne vue des transactions dans le système. Avant de valider cette transaction, des enregistrements d'annulation doivent être conservés, ce qui entraînera une grande quantité d'espace de stockage.

2. Les transactions longues occuperont également des ressources de verrouillage et risquent de faire glisser la base de données.

Exemple

SELECT
  ps.id 'PROCESS ID',
  ps.USER,
  ps.HOST,
  esh.EVENT_ID,
  trx.trx_started,
  esh.event_name 'EVENT NAME',
  esh.sql_text 'SQL',
  ps.time
FROM
  performance_schema.events_statements_history esh
  JOIN performance_schema.threads th ON esh.thread_id = th.thread_id
  JOIN information_schema.PROCESSLIST ps ON ps.id = th.processlist_id
  LEFT JOIN information_schema.innodb_trx trx ON trx.trx_mysql_thread_id = ps.id
WHERE
  trx.trx_id IS NOT NULL
  AND ps.USER != 'SYSTEM_USER'
  AND ps.id = 进程ID
ORDER BY
  esh.EVENT_ID;

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer