(Resuelto) Intercalación desconocida: utf8mb4_0900_ai_ci

12 mar 2023 1 min di lettura
(Resuelto) Intercalación desconocida: utf8mb4_0900_ai_ci
Indice dei contenuti

Introducción

La comparación es un conjunto de reglas que determinan cómo comparar y clasificar cadenas de caracteres en el servidor de la base de datos. En esta guía, estamos discutiendo un error que ocurrió al restaurar una base de datos en un servidor diferente.

Echemos un vistazo al problema y la solución al problema que encontramos recientemente:

Problemas

Al migrar una aplicación web, recibí el siguiente error al restaurar la base de datos a otro servidor. El ID de asignación puede variar según la versión de MySQL.

Mensaje de error:

Error 1273 (HY000) at line 25 Unknown collation: 'utf8mb4_0900_ai_ci'

respondedor

Después de investigar un poco, descubrí que el servidor MySQL que se ejecuta en el servidor de destino tiene una versión más antigua que la fuente. Entonces, obtuvimos que el servidor de destino no contiene la clasificación requerida de la base de datos.

Así que hagamos un pequeño cambio en el archivo de copia de seguridad para solucionar este problema. Edite el archivo de respaldo de la base de datos en un editor de texto y reemplace " utf8mb4_0900_ai_ci " con " utf8mb4_general_ci " y " CHARSET=utf8mb4 " con " CHARSET=utf8 ".

Reemplace la línea a continuación:

ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

con:

ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

Guarde el archivo y restaure la base de datos.

Los usuarios de Linux pueden usar el comando sed para reemplazar directamente el texto en los archivos.

sed -i 's/utf8mb4_0900_ai_ci/utf8_general_ci/g' backup.sql  
sed -i 's/CHARSET=utf8mb4/CHARSET=utf8/g' backup.sql  

La base de datos se restauró con éxito.

Conclusión

Espero que esta solución le haya ayudado a solucionar el problema " Colección desconocida: 'utf8mb4_0900_ai_ci' ".

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.