Convertir tablas a utf-8 en mysql

Convertir tablas a utf-8 en mysql

HRtuWeb No Comment
CMS Sistemas operativos

Alguna vez nos hemos encontrado con el problema que al exportar información a csv, hacer un volcado de datos o exportarlos, el contenido de las bases de datos se ve mal, no muestra los acentos o los cambia por otros caracteres. Tampoco se ven las Ññ y otros muchos caracteres especiales.

Esto es debido a que se están mezclando cotejamientos diferentes en nuestras tablas de la base de datos. En este caso es mejor utilizar compatibilidad con UTF8.

Normalmente, Mysql , crea por defecto  collation a ‘latin1_swedish_ci’. Para arreglar este problema y que los datos se muestren correctamente tenemos estas dos opciones:

Por consola, si tenemos acceso al ssh de nuestro servidor (normalmente en servidores compartidos no lo tenemos):

Modificamos  las tablas afectadas

ALTER TABLE `caracteristicas_subtipos` COLLATE=’utf8_general_ci’;

Exportamos los datos por medio de inserts y hacer truncate de la tabla volcando los datos:

mysqldump -p –default-character-set=utf8  base_de_datos tabla_a_modificar > tabla_a_modificar.sql

Y volvemos a volcar los datos ya modificados:

mysql -p base_de_datos < tabla_a_modificar.sql

base_de_datos y tabla_a_modificar.sql tenemos que sustituirlos por los que correspondan en cada caso. Ademas necesitas autentificarte con los datos de acceso a la base de datos.
Realizarlo desde una herramienta como phpmyadmin:

Será necesario cambiar  la forma de obtener los datos. Exporta los datos a INSERTS. Hacemos un truncate de la tabla y, antes de volcar los inserts, ponemos la sentencia:

set names utf8;
Share Button