Exportación e importación en MySQL a la UTF-8.

A veces algo tan supuestamente sencillo como exportar una copia de una base de datos MySQL se puede convertir en un quebradero de cabeza. Una base de datos para cuyo contenido no se haya respetado una única codificación de caracteres, ni una intercalación coherente en sus tablas y columnas, puede resultar imposible de exportar utilizando clientes como phpMyadmin. A mí me ha pasado, de ahí que haya tenido que buscar una solución al respecto. Tras probar varias soluciones, ésta es la que me ha funcionado. El link del artículo original, abajo del post.
La solución pasa por utilizar la línea de comandos…

Exportando de manera segura

No hagas esto. Podría fastidiar la codificación de caracteres: mysqldump -uroot -p database > utf8.dump # malo Mejor: mysqldump -uroot -p database -r utf8.dump Nótese que cuando tu servidor MysSQL no está establecido a UTF-8, necesitas un mysqldump --default-character-set=latin (!) para conseguir una exportación correctamente codificada. Si sólo quieres exportar la estructura, sin datos, utiliza: mysqldump -uroot -p --no-data database -r utf8.dump

Importando de manera segura

No hagas esto. Podría fastidiar la codificación de caracteres: mysql -u username -p database < dump_file # mala cosa Mejor así: mysql -uroot -p --default-character-set=utf8 databasemysql> SOURCE utf8.dump

Enlace

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *