Maison >base de données >tutoriel mysql >Comment puis-je exécuter mysqldump sans verrouiller les tables dans MySQL ?

Comment puis-je exécuter mysqldump sans verrouiller les tables dans MySQL ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-07 08:22:13767parcourir

How Can I Run mysqldump Without Locking Tables in MySQL?

Exécuter MySQLDump sans verrouillage de table

Le défi :

Il est souhaitable de copier un base de données de production en direct dans une base de données de développement locale sans imposer de verrous sur la base de données de production. Cependant, l'exécution de mysqldump avec les arguments habituels entraîne des verrous de table.

Explorer une solution :

Une solution possible consiste à utiliser l'option --lock-tables=false. Cependant, il est important de noter que cette option peut ne pas convenir aux tables InnoDB.

Optimisation pour les tables InnoDB :

Pour les tables InnoDB, une option plus appropriée est - -transaction unique. Ce paramètre permet à mysqldump d'effectuer le vidage sans acquérir de verrous de table.

Structure de commande :

Pour utiliser l'option --single-transaction, la structure de commande suivante est recommandée :

mysqldump --single-transaction=TRUE -u username -p DB

En incorporant ces ajustements dans la ligne de commande mysqldump, il est possible d'exécuter un dump complet de la base de données de production sans verrouillage des tables, facilitant une copie transparente dans la base de données de développement local.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn