Tengo un sitio web de WordPress en mi servidor WAMP local . Pero cuando subo su base de datos al servidor en vivo, recibo un error
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
¡Cualquier ayuda sería apreciada!
Tengo un sitio web de WordPress en mi servidor WAMP local . Pero cuando subo su base de datos al servidor en vivo, recibo un error
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
¡Cualquier ayuda sería apreciada!
Respuestas:
Puedes resolver esto encontrando
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;
en su .sql
archivo, e intercambiándolo con
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'utf8mb4'
he reemplazado utf8mb4_unicode_520_ci
con utf8mb4_unicode_ci
y está funcionando, según la respuesta de Sabba.
Creo que este error se debe a que el servidor local y el servidor en vivo están ejecutando diferentes versiones de MySQL. Para resolver esto:
utf8mb4_unicode_520_ci
conutf8mb4_unicode_ci
Espero que ayude
utf8mb4_unicode_520_ci
tiene mucho mejor soporte UTF-8 que utf8mb4_unicode_ci
! Sauce: mysql.rjweb.org/doc.php/charcoll#best_practice con clarificación visual que demuestra que 520_ci es superior aquí: mysql.rjweb.org/utf8_collations.html
En mi caso, resultó que mi
nuevo servidor se estaba ejecutando MySQL 5.5
, el
antiguo servidor se estaba ejecutando MySQL 5.6
.
Así que recibí este error al intentar importar el .sql
archivo que había exportado desde mi antiguo servidor.
MySQL 5.5 no es compatible utf8mb4_unicode_520_ci
, pero
MySQL 5.6 sí.
¡La actualización MySQL 5.6
en el nuevo servidor resolvió la intercalación del error!
Si desea conservar MySQL 5.5, puede:
- hacer una copia de su .sql
archivo exportado
- reemplazar instancias de utf8mb4unicode520_ci
y utf8mb4_unicode_520_ci
... con utf8mb4_unicode_ci
- importar su .sql
archivo actualizado .
Abra el archivo sql en su editor de texto;
1. Buscar: utf8mb4_unicode_ci Reemplazar: utf8_general_ci (Reemplazar todo)
2. Buscar: utf8mb4_unicode_520_ci Reemplazar: utf8_general_ci (Reemplazar todo)
3. Buscar: utf8mb4 Reemplazar: utf8 (Reemplazar todo)
¡Guarda y sube!
simplemente elimine "520_"
utf8mb4_unicode_520_ci
→utf8mb4_unicode_ci
fácil de reemplazar
sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' your_sql_file.sql
sed -i '' 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' your_sql_file.sql
Acabo de abrir el archivo dump.sql en Notepad ++ y presioné CTRL + H para buscar y reemplazar la cadena " utf8mb4_0900_ai_ci " y la reemplacé con " utf8mb4_general_ci ". Enlace de origen https://www.freakyjolly.com/resolved-when-i-faced-1273-unknown-collation-utf8mb4_0900_ai_ci-error/
encontrar y reemplazar:
utf8mb4_unicode_520_ci
con
utf8_general_ci
en todo el archivo sql
general
y utf8
son ambos pasos hacia atrás.
Tarde a la fiesta, pero en caso de que esto ocurra con una WORDPRESS
instalación:
#1273 - Unknown collation: 'utf8mb4_unicode_520_ci
En phpmyadmin, en export method
> Format-specific options
(exportación personalizada)
Ajustado a : MYSQL40
Si intenta importar ahora, es posible que reciba otro mensaje de error:
1064 - You have an error in your SQL syntax; .....
Esto se debe a TYPE
que la opción anterior que era sinónimo ENGINE
se eliminó en MySQL 5.5.
Abra su .sql
archivo, busque y reemplace todas las instancias
desde TYPE=
hastaENGINE=
Ahora la importación debería ir sin problemas.
Obteniendo el error de intercalación # 1273 - Intercalación desconocida: 'utf8mb4_unicode_520_ci' es causado por la diferencia de la versión de MySQL desde la que exporta y nuestro servidor MySQL al que importa. Básicamente, la biblioteca de Wordpress para las versiones más recientes verifica en qué versión de SQL se está ejecutando su sitio. Si utiliza MySQL versión 5.6 o más, supone el uso de un nuevo y mejorado Algoritmo de clasificación Unicode (UCA) llamado "utf8mb4_unicode_520_ci". Esto es excelente a menos que termine moviendo su sitio de WordPress de una versión 5.6 más reciente de MySQL a una versión anterior, anterior a 5.6 de MySQL.
Para resolver esto, deberá editar su archivo de exportación SQL y realizar una búsqueda y reemplazo, cambiando todas las instancias de 'utf8mb4_unicode_520_ci' a 'utf8mb4_unicode_ci'. O siga los pasos a continuación si tiene un PHPMyAdmin:
sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' file.sql