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!