Sådan rettes "utf8mb4_0900_ai_ci" indsamlingsfejl ved import af WordPress-database

Hvis du skifter din WordPress-installation fra en MySQL 8-server til MySQL 5.7 (eller derunder), vil du højst sandsynligt støde på 1273 – Ukendt sortering: 'utf8mb4_0900_ai_ci' fejl ved forsøg på at importere databasen. Uanset hvilke værktøjer du bruger til at importere eller eksportere databasen, kan du ikke undslippe denne fejl.

Men hvis du tidligere har kørt din blog på en MySQL 5.7-server og for nylig skiftet til en MySQL 8, men nu skifter tilbage til MySQL 5.7, så er de centrale WordPress-tabeller (indlæg, taksonomier, muligheder, kommentarer osv.) og eventuelle plugins du installerede på MySQL 5.7-serveren, skulle stadig bruge "utf8mb4_unicode_520_ci"-sorteringen.

Du kan importere alle tabeller fra din database, som bruger "utf8mb4_unicode_520_ci"-sorteringen. Så hvad du skal gøre er at finde tabellerne i din database, som bruger "utf8mb4_0900_ai_ci"-sortering og udelukke dem fra den eksporterede database backup-fil.

🔎 Find hvilke tabeller der bruger "utf8mb4_0900_ai_ci"-sorteringen

Du skal finde ud af, hvilke tabeller i din database der bruger "utf8mb4_0900_ai_ci"-sorteringen, så vi kan udelukke disse tabeller, når vi eksporterer databasen.

Hvis du har SSH-adgang til serveren og adgangsoplysningerne til databasen (som du helt kan få fra filen wp-config.php), kan du køre følgende kommando for nemt at finde tabellerne med "utf8mb4_0900_ai_ci"-sortering.

mysqlshow -u brugernavn -p --statusdatabase | grep "utf8mb4_0900_ai_ci"

? Udskift brugernavn og database med din database og brugernavn i kommandoen ovenfor.

Indtast din databasebrugeradgangskode, når du bliver bedt om det Indtast adgangskode: og du vil have listen over tabeller, der bruger "utf8mb4_0900_ai_ci"-sorteringen i din database.

Tabellerne, der bruger "utf8mb4_0900_ai_ci"-sortering, bør kun være af plugins, som du installerede efter skiftet til MySQL 8. Skriv navnene på tabellerne ned, så du kan udelukke dem, næste gang du eksporterer din database.

💡 Tip

Hvis du ikke har SSH-adgang til serveren, så download .sql-databasefilen på din computer og åbn den med en teksteditor såsom Notepad++ og brug søgefunktionen (Ctrl +F) for at finde ud af, hvilke tabeller der bruger "utf8mb4_0900_ai_ci" sammenstilling.

Eksporter database med undtagelse af "utf8mb4_0900_ai_ci"-sorteringstabeller

Nu hvor du har navnene på tabellerne ved hjælp af "utf8mb4_0900_ai_ci"-sortering, kan du eksportere en ny databasesikkerhedskopieringsfil, som ikke inkluderer "utf8mb4_0900_ai_ci"-tabellerne, så du kan importere den til en WordPress-installation, der kører på en MySQL 5.7-server.

Hvis du antager, at du allerede bruger WP-CLI til at eksportere/importere WordPress-database, skal du køre følgende kommando for at eksportere din database, mens du ekskluderer nogle af tabellerne.

wp db eksport --exclude_tables=tabelnavn,tabelnavn,tabelnavn

? Erstatte tabelnavn i kommandoen ovenfor med de faktiske navne på tabellerne, som bruger "utf8mb4_0900_ai_ci"-sortering.

Det er det. Du kan nu nemt importere din WordPress-database til den nye server, der kører MySQL 5.7.

? Vigtig note

For databasetabeller, som du har udeladt fra sikkerhedskopien, skal du sørge for manuelt at genskabe deres data på den nye server. Da disse tabeller kun er af plugins, skal du kontrollere, om disse plugins tilbyder en måde at eksportere data på i plugin-indstillingerne eller ellers rekonfigurere plugin'et på den nye server på samme måde som det blev sat op på den gamle server.