Az „utf8mb4_0900_ai_ci” leválogatási hiba javítása a WordPress adatbázis importálásakor

Ha a WordPress telepítését MySQL 8 szerverről MySQL 5.7 (vagy régebbi) verzióra váltja, akkor nagy valószínűséggel találkozni fog 1273 – Ismeretlen rendezés: „utf8mb4_0900_ai_ci” hiba történt az adatbázis importálása közben. Függetlenül attól, hogy milyen eszközöket használ az adatbázis importálásához vagy exportálásához, nem kerülheti el ezt a hibát.

Ha azonban korábban MySQL 5.7-es szerveren futtatta a blogját, és nemrég váltott MySQL 8-ra, de most visszavált a MySQL 5.7-re, akkor a WordPress alaptáblázatai (bejegyzések, taxonómiák, opciók, megjegyzések stb.) és minden beépülő modul A MySQL 5.7-es kiszolgálóra telepített változatának továbbra is az „utf8mb4_unicode_520_ci” leválogatást kell használnia.

Minden táblát importálhat az adatbázisából, amely az „utf8mb4_unicode_520_ci” leválogatást használja. Tehát meg kell találnia azokat a táblákat az adatbázisában, amelyek az „utf8mb4_0900_ai_ci” leválogatást használják, és kizárják őket az exportált adatbázis-mentési fájlból.

🔎 Keresse meg, mely táblák használják az „utf8mb4_0900_ai_ci” leválogatást

Meg kell találnia, hogy az adatbázis mely táblái használják az „utf8mb4_0900_ai_ci” leválogatást, hogy kizárhassuk ezeket a táblákat az adatbázis exportálásakor.

Ha rendelkezik SSH-hozzáféréssel a kiszolgálóhoz és az adatbázis-hozzáférési hitelesítő adatokhoz (amit teljes mértékben megkaphat a wp-config.php fájlból), a következő parancs futtatásával könnyen megtalálhatja az „utf8mb4_0900_ai_ci” leválogatással rendelkező táblákat.

mysqlshow -u felhasználónév -p --status adatbázis | grep "utf8mb4_0900_ai_ci"

? Helyettesíteni a felhasználónév és adatbázis az adatbázisával és a felhasználónevével a fenti parancsban.

Adja meg az adatbázis felhasználói jelszavát, amikor a rendszer kéri Írd be a jelszót: és az adatbázisban található „utf8mb4_0900_ai_ci” leválogatást használó táblák listája lesz.

Az „utf8mb4_0900_ai_ci” leválogatást használó tábláknak csak azokat a beépülő modulokat kell tartalmazniuk, amelyeket a MySQL 8-ra való átállás után telepített. Írja le a táblák nevét, hogy az adatbázis következő exportálásakor kizárhassa őket.

💡 Tipp

Ha nem fér hozzá SSH-hoz a kiszolgálóhoz, töltse le az .sql adatbázisfájlt a számítógépére, nyissa meg egy szövegszerkesztővel, például a Notepad++ segítségével, és használja a keresési funkciót (Ctrl + F) annak meghatározásához, hogy mely táblák használják az „utf8mb4_0900_ai_ci” fájlt. egybevetés.

Adatbázis exportálása az „utf8mb4_0900_ai_ci” leválogatási táblák kivételével

Most, hogy megvan az „utf8mb4_0900_ai_ci” leválogatást használó táblák neve, exportálhat egy új adatbázis-mentési fájlt, amely nem tartalmazza az „utf8mb4_0900_ai_ci” táblákat, így importálhatja azt egy MySQL 5.7-es kiszolgálón futó WordPress-telepítésbe.

Feltéve, hogy már használja a WP-CLI-t a WordPress adatbázis exportálására/importálására, futtassa a következő parancsot az adatbázis exportálásához, miközben kizár néhány táblát.

wp db export --exclude_tables=table_name,table_name,table_name

? Cserélje ki táblázat_neve a fenti parancsban a táblák tényleges nevével, amely az „utf8mb4_0900_ai_ci” leválogatást használja.

Ez az. Mostantól egyszerűen importálhatja WordPress adatbázisát az új MySQL 5.7-et futtató szerverre.

? Fontos jegyzet

Azon adatbázistáblák esetében, amelyeket kizárt a biztonsági mentésből, ne felejtse el manuálisan újra létrehozni az adatokat az új kiszolgálón. Mivel ezek a táblázatok csak beépülő modulokat tartalmaznak, ellenőrizze, hogy ezek a beépülő modulok lehetőséget kínálnak-e az adatok exportálására a beépülő modul beállításaiban, vagy konfigurálja újra a beépülő modult az új kiszolgálón ugyanúgy, ahogyan a régi kiszolgálón beállította.