Avisos
Vaciar todo

Pasar de latin1 a utf8mb4

13 Respuestas
3 Usuarios
0 Reactions
19 Visitas
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Hola, 

 

Tengo una BBDD y necesito, según me confirman los técnicos de WPML después de ver el registro del debug.log, que la configure con estos parámetros en lugar de latin1:

character_set_server = 'utf8mb4';
collation_server = 'utf8mb4_unicode_ci';

 

He preguntado a soporte a través de un ticket y me han dicho que deje un mensaje en el foro.

¿Me podéis echar una mano?

Llevo unas semanas viendo problemas con la creación de tablas y nunca he llegado a entender por qué ocurria. Espero que esto pueda solucionarlo.

 

Gracias, 


 
Respondido : 12/11/2025 11:02 am
Pepe
 Pepe
Respuestas: 41582
Illustrious Member Admin
 

Hola Xavi.

.- Accede a tu cuneta de WePanel -> Administrador de archivos.

.- Accede a la carpeta del dominio y edita el archivo wp-config

.- Antes de la linea /* That's all, stop editing! Happy publishing. */ añade lo siguiente:

define('DB_CHARSET', 'utf8mb4');

define('DB_COLLATE', 'utf8mb4_unicode_ci');

 

Sobre la codificación de la base de datos veo que ya esta en 'utf8mb4_unicode_ci'

.- Instala el siguiente plugin:

-> https://es.wordpress.org/plugins/wp-optimize/

.- Accede wp-optimize -> bases de datos pestaña tablas

En la columna tipo podrás v er la codificación de cada tabla.

 

Un saludo

 


 
Respondido : 12/11/2025 11:55 am
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Hola Pepe, 

La BBDD en wp-config está así:

// Charset y Collation correctos
define( 'DB_CHARSET', 'utf8mb4_unicode_ci' );
define( 'DB_COLLATE', '' );

Pero por PHPMYADMIN no sale esto, sino latin1.

Por qué hay 2 configuraciones diferentes?

Gracias,


 
Respondido : 12/11/2025 12:50 pm
Pepe
 Pepe
Respuestas: 41582
Illustrious Member Admin
 

Hola Xavi.

Estoy revisando tus bases de datos y todas estan con cotejamiento utf8mb4_unicode_ci

Por qué hay 2 configuraciones diferentes?

Esto suele ocurrir porque la base de datos se creó antes de definir DB_COLLATE, WordPress ignora DB_COLLATE si la DB ya existe. Solo lo usa al crear la base de datos por primera vez.

Si la base de datos es la de motoescuela puedes acceder a phpMyAdmin y podrás comprobar que el cotejamineto de todas las tablas es utf8mb4_unicode_ci

 

Un Saludo


 
Respondido : 12/11/2025 2:32 pm
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Gracias por la ayuda Pepe. Voy a seguir tirando el hilo a ver si podemos solucionarlo.

Te añado más contexto:

  • Intenté instalar un multisite pero había problemas en la creación de las tablas. No le di importancia.
  • Intenté instalar Restrict Content Pro y, de nuevo, fallaba la instalación.
  • Probé con Woocommerce Suscriptions para el tema de restringir contenido, también fallaba.
  • Finalmente decidimos dejar el multisite a parte, y pasar a WPML + multimoneda. Y también falla.

Entonces, creo que el problema que tenemos actualmente es con la creación de tablas ya que, si lo hago a través de scripts SQL, se crean algunas tablas y parece que pude trampear un poco. Aunque nunca conseguí que las cosas funcionasen correctamente.

Pensando un poco, meses atrás hicimos una limpieza del servidor y eliminamos muchos archivos de la sección "Medios".

Es posible que esté faltando algo de nuestro Wordpress o está mal configurado y por eso no se pueden crear las tablas?

Lo raro es que, si descargamos la web actual a un local, se puede activar WPML. Pero la misma web exactamente en webempresa, no deja cargar WPML (lo ha hecho el equipo técnico de WPML).

 

¿Se te ocurre qué más probar? 

Gracias!


 
Respondido : 12/11/2025 3:11 pm
Pepe
 Pepe
Respuestas: 41582
Illustrious Member Admin
 

Hola Xavi.

Ok, que error es el que te muestra al activar WPML ? Puedes adjuntarnos una captura con el aviso del error para que podamos revisarlo ?

Porqué crees que es problema con la creación de tablas ?

.- Edita el archivo wp-config y revisa que tengas esta linea tal cual:

define( 'DB_HOST', 'localhost' ); 

 

Un saludo


 
Respondido : 12/11/2025 3:50 pm
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Buenas de nuevo Pepe, 

 

1) Adjunto imagen del error. 

Captura de pantalla 2025 11 12 a las 20.18.04

2) Porque instalaba los plugins y luego iba a la base de datos y faltaban la mitad. Luego instalaba el mismo archivo en local y cargaba muchas más tablas.

 

3) Confirmo que tengo la línea de código: define( 'DB_HOST', "localhost" ); en el wp-config.

Espero que las comillas no afecten. Tengo todos los define de la bbdd igual: primero ' (simples) y luego " (dobles).

 

Seguimos!


 
Respondido : 12/11/2025 7:19 pm
Argenis
Respuestas: 11783
Illustrious Member Moderator
 

Hola Xavi,

Segun entiendo tus bases de datos estan en el formato utf8mb4_unicode_ci, no estan bien asi? ten en cuenta vaciar la cache de tu sitio l;uego de hacer este tipo de cambios, puedes usar el plugin wp optimize:

https://co.wordpress.org/plugins/wp-optimize

Esto para limpiar la cache de la base de datos. Ten en cuenta que es un plugin de pago y no podemos replicar el error, más allá de lo comentado en un inicio soporte del mismo no te ha confirmado nada?

Verifica  y nos comentas.

Un saludo 🖐️  


 
Respondido : 12/11/2025 9:57 pm
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Buenos días,

Acabo de hacer una copia de seguridad y la he instalado en local. Sin hacer absolutamente ningún cambio, he activado el plugin WPML sin ningún problema.

Por lo tanto, entiendo que no es un tema de Wordpress sino de la configuración del servidor no? Es por ello que intento hablar con el departamento de hosting a través de un ticket para que revisen la configuración. Tanto el equipo técnico de WPML como yo mismo hemos hecho una copia en nuestros locales y funciona a la primera y sin hacer cambios.

Gracias, 


 
Respondido : 13/11/2025 10:40 am
Pepe
 Pepe
Respuestas: 41582
Illustrious Member Admin
 

Hola Xavi.

Por lo que muestras en la captura " Error fatal " me huele a que puede ser por version de PHP, veo que estas utilizando la version 8.4

.- Prueba a bajar la version de PHP, por ejemplo 7.4 y ves subiendo de version de PHP---8.0, 8.1..... 

 

Un saludo


 
Respondido : 13/11/2025 10:47 am
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Hola Pepe, 

La he bajado precisamente para probar. En mi local funciona con la 8.2.27 pero no funciona en el servidor con la 8.2. De hecho, he probado de la 7.4 a la 8.4 y todas muestran el mismo error fatal.

Por otro lado, he intentado usar el Clonador de Wordpress de Wepanel (a ver si clonando la web y restaurando una copia funciona igual que en mi local) pero no me deja. Me da el siguiente error adjunto.

Voy a seguir probando cosas.

Gracias

Captura de pantalla 2025 11 14 a las 12.44.05

 


 
Respondido : 14/11/2025 11:54 am
 Xavi
Respuestas: 7
Active Member
Topic starter
 

Pepe, ya he conseguido activar el plugin dejándolo en:

define( 'DB_CHARSET', 'utf8mb4' );

define( 'DB_COLLATE', '' );

 

El problema de ahora es que se muestran caracteres raros:

Captura de pantalla 2025 11 14 a las 13.16.52

Según parece, muestra en latin1, que es como me muestra que está configurada la BBDD en PHPMYADMIN.

 

¿Cómo lo puedo comprobar o qué más puedo hacer?

Gracias, 


 
Respondido : 14/11/2025 12:18 pm
Pepe
 Pepe
Respuestas: 41582
Illustrious Member Admin
 

Hola Xavi.

Ok vamos hacer una instalación limpia.

.- Elimina por completo el plugin de WPML y creo que tienes otra para traducciones de WooCommerce

.- Accede a phpMyAdmin y selecciona la base de datos que utiliza la instalación

.- Selecciona la pestaña SQL

.- Ejecuta esta consulta:

DROP TABLE IF EXISTS
wpdev_icl_background_task,
wpdev_icl_content_status,
wpdev_icl_core_status,
wpdev_icl_flags,
wpdev_icl_languages,
wpdev_icl_languages_translations,
wpdev_icl_links_post_to_post,
wpdev_icl_links_post_to_term,
wpdev_icl_locale_map,
wpdev_icl_message_status,
wpdev_icl_node,
wpdev_icl_reminders,
wpdev_icl_string_positions,
wpdev_icl_string_status,
wpdev_icl_string_translations,
wpdev_icl_strings,
wpdev_icl_translate,
wpdev_icl_translate_job,
wpdev_icl_translation_batches,
wpdev_icl_translation_status,
wpdev_icl_translations;

 

Esto eliminara todos los restos del plugin WPML

Una vez lo tengas:

.- Vuelve a descarga el plugin y prueba a instalarlo.

 

Un saludo

 


 
Respondido : 14/11/2025 12:32 pm