Un problema frecuente con la codificación en MySQL y su solución es lo que comentaré a continuación.
El otro día me encontraba desarrollando un sistema web en mí Pc utilizando MySQL con la codificación que tenía por defecto: «latin1». En una de las tablas guardaba los textos que se mostrarían en la algunas de las páginas, y todo funcionaba de maravilla.
Llegó el momento de llevar el sistema al servidor donde estaría cargado. Pongo los archivos en el server y levanto la base de datos. Hasta ahora todo fantástico. Al momento de ver la página funcionando fue cuando explotó todo. Las letras que contenian acentos, algunos signos de puntuación y otras cosas fueron reemplazadas por símbolos muy extraños que estaban lejos de ser coherentes con el contenido y no tenían nada que ver con lo que habia puesto.
Revisando un poco la situación me percaté que la codificación que tenia el motor MySQL del servidor era UTF-8. Entonces con el fin de migrar el dump con la codificación en «latin1» encontré el siguiente comando que resolvio el problema:
Desde la consola de comando de linux:
mysql -u root -p --default-character-set=utf8 BASE_DE_DATOS < /var/www/dump.sql
De esta manera importo la base de datos que está en «latin1» convirtiendolá a «UTF-8».
Con este simple comando todo volvio a la normalidad y problema solucionado. 🙂
Muy bueno!
Para tenerlo en cuenta…