Résolution de l'erreur « L'espace de table existe » lors de l'importation MySQL
Lorsque vous rencontrez l'erreur « L'espace de table pour la table xxx existe » lors de l'importation de données MySQL, il peut sembler contre-intuitif au premier abord que vous ne puissiez pas supprimer le tablespace en raison de son inexistence. Cependant, ce problème résulte d'une inadéquation entre les informations de l'espace table et l'état réel de la table.
Dans certains cas, l'erreur "espace table plein" peut se produire en mode "innodb_file_per_table". Lorsque le tablespace innodb_data_file_path est insuffisant, des orphelins peuvent apparaître (fichiers .ibd sans équivalents .frm). Pour résoudre ce problème :
Naviguez jusqu'au répertoire dans lequel vos fichiers MySQL par table sont stockés ( par exemple, /var/lib/mysql pour macOS). Identifiez tout fichier tablename.ibd qui n'est pas accompagné d'un fichier tablename.frm.
Déplacez le fichier .ibd orphelin vers un emplacement temporaire sûr. Cela le déconnectera de la base de données.
Depuis votre interface MySQL, supprimez la table avec le problème (par exemple, DROP TABLE temp;), puis créez-le à nouveau (par exemple, CREATE TABLE temp (...);).
Notez qu'il est crucial de résolvez tous les problèmes sous-jacents qui ont pu déclencher l’erreur (par exemple, requêtes de longue durée ou tables verrouillées). Dans le cas contraire, des fichiers .ibd orphelins pourraient réapparaître lors de tentatives ultérieures.
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!