Ik heb een WordPress-website op mijn lokale WAMP-server. Maar wanneer ik de database upload naar de live server, krijg ik een foutmelding
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
Alle hulp wordt op prijs gesteld!
Antwoord 1, autoriteit 100%
Je kunt dit oplossen door te zoeken
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;
in uw .sql
-bestand en verwissel het met
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
Antwoord 2, autoriteit 91%
Ik denk dat deze fout wordt veroorzaakt doordat de lokale server en de live server verschillende versies van MySQL gebruiken. Om dit op te lossen:
- Open het sql-bestand in je teksteditor
- Zoek en vervang alle
utf8mb4_unicode_520_ci
doorutf8mb4_unicode_ci
- Opslaan en uploaden naar een nieuwe mySql-database
Hoop dat dat helpt
Antwoord 3, autoriteit 17%
In mijn geval blijkt het mijn
nieuwe server draaide MySQL 5.5
,
oude server draaide MySQL 5.6
.
Dus ik kreeg deze fout bij het importeren van het .sql
-bestand dat ik van mijn oude server had geëxporteerd.
MySQL 5.5 ondersteunt utf8mb4_unicode_520_ci
niet, maar
MySQL 5.6 wel.
Bijwerken naar MySQL 5.6
op de nieuwe server loste de fout op bij het sorteren!
Als u MySQL 5.5 wilt behouden, kunt u:
– maak een kopie van uw geëxporteerde .sql
-bestand
– Vervang de instanties van utf8mb4unicode520_ci
en utf8mb4_unicode_520_ci
… met utf8mb4_unicode_ci
– Importeer uw bijgewerkte .sql
-bestand.
4, Autoriteit 8%
Eenvoudig vervangen
sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' your_sql_file.sql
5, Autoriteit 6%
Verwijder gewoon “520_”
utf8mb4_unicode_520_ci
→ utf8mb4_unicode_ci
6, Autoriteit 2%
Zoek en vervangen:
utf8mb4_unicode_520_ci
met
utf8_general_ci
In het hele SQL-bestand
7, Autoriteit 2%
Collatiefout #1273 ontvangen – Onbekende sortering: ‘utf8mb4_unicode_520_ci’ wordt veroorzaakt door het verschil tussen de MySQL-versie van waaruit u exporteert en onze MySQL-server waarnaar u importeert. Kortom, de WordPress-bibliotheek voor nieuwere versies controleert om te zien op welke versie van SQL uw site draait. Als het MySQL versie 5.6 of hoger gebruikt, gaat het uit van het gebruik van een nieuw en verbeterd Unicode Collation Algorithm (UCA) genaamd “utf8mb4_unicode_520_ci”. Dit is geweldig, tenzij je je WordPress-site uiteindelijk verplaatst van een nieuwere 5.6-versie van MySQL naar een oudere, pre 5.6-versie van MySQL.
Om dit op te lossen, moet je ofwel je SQL-exportbestand bewerken en zoeken en vervangen, waarbij alle instanties van ‘utf8mb4_unicode_520_ci’ worden gewijzigd in ‘utf8mb4_unicode_ci’. Of volg de onderstaande stappen als u een PHPMyAdmin heeft:
- Klik op het tabblad Exporteren voor de database
- Klik op het keuzerondje Aangepast.
- Ga naar de sectie met de titel Formaatspecifieke opties en wijzig de vervolgkeuzelijst voor Databasesysteem of oudere MySQL-server om de uitvoercompatibiliteit te maximaliseren met: van GEEN in MYSQL40.
- Scroll naar beneden en klik op GO.
Antwoord 8, autoriteit 2%
In mijn geval vervang ik het door utf8_general_ci
met sed als volgt:
sed -i 's/utf8_0900_ai_ci/utf8_general_ci/g' MY_DB.sql
sed -i 's/utf8mb4_unicode_520_ci/utf8_general_ci/g' MY_DB.sql
Daarna kan ik het probleemloos importeren.
Antwoord 9
Laat op het feest, maar voor het geval dit gebeurt met een WORDPRESS
installatie:
#1273 - Unknown collation: 'utf8mb4_unicode_520_ci
In phpmyadmin, onder export method
> Format-specific options
(aangepaste export)
Instellen op: MYSQL40
Als u nu probeert te importeren, kunt u nu een andere foutmelding krijgen:
1064 - You have an error in your SQL syntax; .....
Dat komt omdat de oudere optie TYPE
die synoniem was met ENGINE
is verwijderd in MySQL 5.5.
Open uw .sql
-bestand, zoek en vervang alle instanties
van TYPE=
tot ENGINE=
Het importeren zou nu soepel moeten verlopen.
Antwoord 10
Ik heb gewoon de COLLATE
en andere attributen verwijderd en ben alleen gebleven tot ENGINE
.
zoals het volgende
VAN:
ENGINE=InnoDB AUTO_INCREMENT=429 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
NAAR:
ENGINE=InnoDB;
en het werkte prima voor mij.
Antwoord 11
1273 – Onbekende sortering: ‘utf8mb4_0900_ai_ci’
in mijn geval kon ik DB niet importeren met
ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
en
ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci;
beide. Maar door dit in .SQL-bestandte veranderen, is het probleem opgelost
ENGINE=InnoDB DEFAULT CHARSET=latin1;
GE-UPDATE
met behulp van ‘utf8mb4_general_ci‘ is het probleem opgelost
ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci;
Antwoord 12
deze fout wordt veroorzaakt door een conflict tussen verschillende versies van MySQL. Om dit op te lossen:
-
Open het sql-bestand in een teksteditor
-
Zoek en vervang alle utf8mb4_0900_ai_ci door utf8mb4_unicode_ci
-
Opslaan en nieuw mySql db-bestand proberen