J'ai un site Web WordPress sur mon serveur WAMP local. Mais lorsque je télécharge sa base de données sur le serveur en direct, j'obtiens une erreur
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
Toute aide serait appréciée!
J'ai un site Web WordPress sur mon serveur WAMP local. Mais lorsque je télécharge sa base de données sur le serveur en direct, j'obtiens une erreur
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
Toute aide serait appréciée!
Réponses:
Vous pouvez résoudre ce problème en trouvant
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;
dans votre .sql
fichier, et en l'échangeant avec
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'utf8mb4'
:, j'ai remplacé utf8mb4_unicode_520_ci
par utf8mb4_unicode_ci
et ça marche, selon la réponse de Sabba.
Je pense que cette erreur est due au fait que le serveur local et le serveur live exécutent différentes versions de MySQL. Pour résoudre ceci:
utf8mb4_unicode_520_ci
parutf8mb4_unicode_ci
J'espère que cela pourra aider
utf8mb4_unicode_520_ci
a un bien meilleur support UTF-8 que utf8mb4_unicode_ci
! Sauce: mysql.rjweb.org/doc.php/charcoll#best_practice avec clarification visuelle prouvant que 520_ci est supérieur ici: mysql.rjweb.org/utf8_collations.html
Dans mon cas, il s'avère que mon
nouveau serveur fonctionnait MySQL 5.5
, l'
ancien serveur fonctionnait MySQL 5.6
.
J'ai donc eu cette erreur en essayant d'importer le .sql
fichier que j'avais exporté depuis mon ancien serveur.
MySQL 5.5 ne prend pas en charge utf8mb4_unicode_520_ci
, mais
MySQL 5.6 le fait.
La mise à jour MySQL 5.6
sur le nouveau serveur a résolu le classement de l'erreur!
Si vous souhaitez conserver MySQL 5.5, vous pouvez:
- faire une copie de votre .sql
fichier exporté
- remplacer les instances de utf8mb4unicode520_ci
et utf8mb4_unicode_520_ci
... par utf8mb4_unicode_ci
- importer votre .sql
fichier mis à jour .
Ouvrez le fichier sql dans votre éditeur de texte;
1. Rechercher: utf8mb4_unicode_ci Remplacer: utf8_general_ci (Tout remplacer)
2. Rechercher: utf8mb4_unicode_520_ci Remplacer: utf8_general_ci (Tout remplacer)
3. Rechercher: utf8mb4 Remplacer: utf8 (Tout remplacer)
Enregistrez et téléchargez!
il suffit de supprimer "520_"
utf8mb4_unicode_520_ci
→utf8mb4_unicode_ci
Je viens d'ouvrir le fichier dump.sql dans Notepad ++ et appuyez sur CTRL + H pour trouver et remplacer la chaîne " utf8mb4_0900_ai_ci " et l' ai remplacée par " utf8mb4_general_ci ". Lien source https://www.freakyjolly.com/resolved-when-i-faced-1273-unknown-collation-utf8mb4_0900_ai_ci-error/
trouver et remplacer:
utf8mb4_unicode_520_ci
avec
utf8_general_ci
dans tout le fichier SQL
general
et utf8
sont les deux pas en arrière.
En retard à la fête, mais au cas où cela se produirait avec une WORDPRESS
installation:
#1273 - Unknown collation: 'utf8mb4_unicode_520_ci
Dans phpmyadmin, sous export method
> Format-specific options
(exportation personnalisée)
Mis à : MYSQL40
Si vous essayez d'importer maintenant, vous pourriez maintenant recevoir un autre message d'erreur:
1064 - You have an error in your SQL syntax; .....
C'est parce que l'ancienne TYPE
option qui était synonyme de a ENGINE
été supprimée dans MySQL 5.5.
Ouvrez votre .sql
fichier, recherchez et remplacez toutes les instances
du TYPE=
auENGINE=
Maintenant, l'importation devrait se dérouler sans problème.
Obtention de l'erreur de classement # 1273 - Classement inconnu: 'utf8mb4_unicode_520_ci' est causé par la différence entre la version MySQL à partir de laquelle vous exportez et notre serveur MySQL vers lequel vous importez. Fondamentalement, la bibliothèque Wordpress pour les versions plus récentes vérifie sur quelle version de SQL votre site est exécuté. S'il utilise MySQL version 5.6 ou plus, il suppose l'utilisation d'un nouvel algorithme de classement Unicode amélioré (UCA) appelé «utf8mb4_unicode_520_ci». C'est génial à moins que vous ne finissiez par déplacer votre site WordPress d'une version 5.6 plus récente de MySQL vers une version antérieure antérieure à la version 5.6 de MySQL.
Pour résoudre ce problème, vous devrez soit modifier votre fichier d'exportation SQL et effectuer une recherche et un remplacement, en changeant toutes les instances de «utf8mb4_unicode_520_ci» en «utf8mb4_unicode_ci». Ou suivez les étapes ci-dessous si vous avez un PHPMyAdmin:
sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' file.sql