utf8_unicode_ci utf8_unicode_520_ci unknown solucion error mysql sql character-encoding utf8mb4

mysql - utf8_unicode_520_ci - ERROR 1115(42000): Conjunto de caracteres desconocido: ''utf8mb4''



unknown character set: ''utf8_unicode_ci'' (7)

Esto puede ayudar:

mysqldump --compatible=mysql40 -u user -p DB > dumpfile.sql

PHPMyAdmin tiene el mismo modo de compatibilidad con MySQL en las opciones de exportación de "experto". Aunque en ocasiones eso no ha hecho nada.

Si no tiene acceso a través de la línea de comandos o a través de PHPMyAdmin, edite el

/*!50003 SET character_set_client = utf8mb4 */ ;

poco para leer ''utf8'' solamente, es el camino a seguir.

Tengo un volcado de MySQL, que intenté restaurar con:

mysql -u"username" -p"password" --host="127.0.0.1" mysql_db < mysql_db

Sin embargo, esto arrojó un error:

ERROR 1115 (42000) at line 3231: Unknown character set: ''utf8mb4''

Estas son las líneas 3231-3233:

/*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_general_ci */ ;

Estoy usando MySQL 5.1.69. ¿Cómo puedo solucionar este error?


Estoy respondiendo la pregunta, ya que no encontré ninguno de ellos completo. Como hoy en día el conjunto de caracteres desconocido: ''utf8mb4'' es bastante frecuente, ya que muchas implementaciones tienen MySQL menos de 5.5.3 (versión en la que se agregó utf8mb4).

El error indica claramente que no tiene utf8mb4 en su servidor de stage db.

Causa : es probable que localmente tengas la versión 5.5.3 o superior de MySQL , y en el escenario / VPS alojado tienes una versión de servidor MySQL inferior a la 5.5.3

Los utf8mb4 caracteres utf8mb4 se agregaron en MySQL 5.5.3.

Se agregó utf8mb4 debido a un error en el utf8 caracteres utf8 de MySQL. El manejo de MySQL del conjunto de caracteres utf8 solo permite un máximo de 3 bytes para un solo punto de código, lo que no es suficiente para representar la totalidad de Unicode (punto de código máximo = 0x10FFFF ). Debido a que no querían romper potencialmente cualquier cosa que dependiera de este comportamiento utf8mb4 , se agregó utf8mb4 . https://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.html .

De SO respuesta :

Verificación : para verificar, puede verificar el conjunto de caracteres actual y la intercalación para la base de datos desde la que está importando el volcado. ¿Cómo veo qué conjunto de caracteres es una base de datos / tabla / columna MySQL ?

Solución 1 : Simplemente actualice su servidor MySQL a 5.5.3 (por lo menos); para la próxima vez, tenga en cuenta la versión que usa localmente, para stage y para prod, todo debe ser el mismo. Una sugerencia: en el presente, el conjunto de caracteres predeterminado debe ser utf8mb4.

Solución 2 (no recomendada): Convierta el conjunto de caracteres actual a utf8 y luego exporte los datos; se cargará bien.


Puedes probar:

Abrir archivo sql por editor de texto encontrar y reemplazar todos

utf8mb4 to utf8

Importar de nuevo.


Simplemente abra su archivo sql con un editor de texto y busque ''utf8mb4'' y reemplácelo con utf8.Espero que funcione para usted


Su versión no admite ese conjunto de caracteres, creo que fue la versión 5.5.3 que lo introdujo. Debe actualizar su mysql a la versión que utilizó para exportar este archivo.

El error es bastante claro: establece un cierto conjunto de caracteres en su código, pero su versión mysql no lo admite y, por lo tanto, no lo sabe.

De acuerdo con https://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.html :

utf8mb4 es un superconjunto de utf8

Así que tal vez exista la posibilidad de que puedas utilizarlo, cerrar los ojos y esperar, pero eso dependería de tus datos, y no lo recomendaría.


tal vez la base de datos completa + tablas + campos deberían tener el mismo conjunto de caracteres ??!

es decir

CREATE TABLE `politicas` ( `ID` int(11) NOT NULL AUTO_INCREMENT, `Nombre` varchar(250) CHARACTER SET utf8 NOT NULL, -------------------------------------^here!!!!!!!!!!! PRIMARY KEY (`ID`) ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; -------------------------------------------------^here!!!!!!!!!


Abra su archivo mysql cualquier herramienta de edición

encontrar

/ *! 40101 SET NAMES utf8mb4 * /;

cambio

/ *! 40101 SET NAMES utf8 * /;

Guarde y cargue ur mysql.