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!