Cómo cambiar la codificación de una base de datos MySQL

Guía paso a paso: convertir una base de datos MySQL a UTF-8.

Al migrar sitios web o trabajar con proyectos antiguos, es posible que encuentres problemas con la visualización incorrecta de caracteres. Esto suele deberse a una codificación incorrecta de la base de datos. A continuación se presentan algunas formas sencillas de cambiar la codificación de tu base de datos MySQL — mediante phpMyAdmin o consultas SQL.

Una base de datos es un conjunto de tablas interrelacionadas donde se almacenan todos los datos de tu sitio web.


Cambiar la codificación mediante phpMyAdmin y un editor de texto

Primero, exporta tu base de datos a través de phpMyAdmin a tu ordenador local.

file

Abre el archivo SQL exportado en un editor de texto (por ejemplo, Notepadqq o Notepad2) y convierte su codificación a UTF-8 sin BOM.

A continuación, importa el archivo de vuelta a una base de datos recién creada mediante phpMyAdmin.


Cambiar la codificación mediante una consulta SQL

En phpMyAdmin → selecciona tu base de datos → pestaña «SQL», ejecuta la siguiente consulta:

file

ALTER TABLE `db_name`.`table_name` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Nota

Esta consulta cambia el conjunto de caracteres de la tabla especificada al seleccionado (en este caso, utf8).

Para convertir la codificación de todas las tablas a la vez, utiliza esta consulta:

SELECT CONCAT(
  'ALTER TABLE `', t.`TABLE_SCHEMA`, '`.`', t.`TABLE_NAME`, 
  '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;'
) AS sqlcode
FROM `information_schema`.`TABLES` t
WHERE t.`TABLE_SCHEMA` = 'DATABASE_NAME'
ORDER BY 1;

Nota

Sustituye DATABASE_NAME por el nombre de tu propia base de datos.

Copia las líneas generadas y ejecútalas en la consola SQL de phpMyAdmin.


Ayuda

¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!

¿Necesitas ayuda?Nuestros ingenieros te ayudarán gratuitamente con cualquier pregunta en minutosContáctanos