Maison >base de données >tutoriel mysql >Comment résoudre l'exception de verrouillage des métadonnées de table dans MySQL

Comment résoudre l'exception de verrouillage des métadonnées de table dans MySQL

WBOY
WBOYavant
2023-05-29 11:31:122620parcourir

1. Raison

Lorsqu'une instruction DDL est exécutée, le verrou d'écriture des métadonnées MDL sera automatiquement ajouté à la table et le verrou ne sera pas libéré tant que la transaction n'est pas validée. Le but de ce verrou est de protéger l'intégrité de la structure de la table et la cohérence des métadonnées.

2. Méthode de traitement

L'environnement de production est illustré dans la figure ci-dessous : la session A ouvre une transaction et exécute DQL

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

À ce stade, la session B doit ajouter des index de texte intégral aux deux champs du table

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

Après l'exécution, il a été constaté que le maître était bloqué

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

Vérifiez la liste des processus associés et constatez qu'il attendait d'obtenir le verrouillage des métadonnées mdl

select * from information_schema.processlist where info like '%alter table `bas_business_type_text` %'

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

En regardant le situation de verrouillage de la table, vous pouvez voir que les verrous en lecture et en écriture s'excluent mutuellement

SELECT * FROM sys.schema_table_lock_waits

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

Exécutez kill 11 selon les invites

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

Vous pouvez voir que la session B a été exécutée avec succès

Comment résoudre lexception de verrouillage des métadonnées de table dans MySQL

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