Skip to content

OCIO y TECnología

  • Privacy Policy
Offcanvas

  • Register
  • Lost your password ?

OCIO y TECnología

  • Home » 
  • Tecnología » 
  • Data bases » 
  • Convertir BD en MySQL de LATIN1 a UTF8

Convertir BD en MySQL de LATIN1 a UTF8

Emilio González Montaña 2008/11/19 0

A todos los administradores o desarrolladores Web nos ha pasado alguna vez que nos equivocamos o tenemos que hacer un porting a causa de la dichosa codificación de caracteres.

El problema viene porque normalmente en MySQL la codificación de caracteres por defecto es la dependiente de la configuración local de la máquina donde está instalado (en mi caso LATIN1), sin embargo lo más común es que la codificación correcta en la mayoría de los casos es UTF8.

En este post se explicará el proceso detalladamente:

Backup de BD vieja

Hacer un backup de la base de datos con la codificación mala (LATIN1) a un fichero de texto:

mysqldump -u <usuario_BD> \
          -p <nombre_BD_latin1> \
          --default-character-set=latin1 > <nombre_BD_latin1>.sql

Donde: usuario_BD es el nombre de usuario de la base de datos, nombre_BD_latin1 es el nombre de la base de datos con la codificación mala; este comando te pedirá la clave del usuario de base de datos introducido.

Crear la BD nueva

Crear una base de datos vacía con codificación de caracteres UTF8:

mysql -u <usuario_BD> -p
CREATE DATABASE <nombre_BD_utf8> \
                CHARACTER SET utf8 COLLATE \
                utf8_general_ci;
quit

Convertir formato e importar

Modificar los caracteres del backup de LATIN1 a UTF8:

iconv -f ISO-8859-1 -t UTF-8 <nombre_BD_latin1>.sql > \
<nombre_BD_utf8>.sql

Substituir en la creación de las tablas del fichero de backup las cadenas que hacen que las tablas se creen con la codificación mala:

perl -pi -w -e 's/CHARSET=latin1/CHARSET=utf8/g;' \
<nombre_BD_utf8>.sql

Importar el fichero de backup en la nueva base de datos:

mysql -u <usuario_BD> \
      -p <nombre_BD_utf8> \
      --default-character-set=utf8 < <nombre_BD_utf8>.sql

Referencias

Enlaces a información de interés sobre el tema:

  • Tip para convertir de latin1 a utf8 en MySQL
  • convertir de latin1 a utf8 en mysql

Comparte esto:

  • Click to share on X (Opens in new window) X
  • Click to share on Facebook (Opens in new window) Facebook
Tags : Tags charset   iconv   Latin1   MySQL   MySQL dump   perl   UTF-8
Share
facebookShare on FacebooktwitterShare on TwitterpinterestShare on Pinterest
linkedinShare on LinkedinvkShare on VkredditShare on ReddittumblrShare on TumblrviadeoShare on ViadeobufferShare on BufferpocketShare on PocketwhatsappShare on WhatsappviberShare on ViberemailShare on EmailskypeShare on SkypediggShare on DiggmyspaceShare on MyspacebloggerShare on Blogger YahooMailShare on Yahoo mailtelegramShare on TelegramMessengerShare on Facebook Messenger gmailShare on GmailamazonShare on AmazonSMSShare on SMS
Post navigation
Previous post

Evita que te espíen con un túnel SSH

Next post

Reemplazar texto en MySQL

Emilio González Montaña

Related Posts

Categories Linux  Networking  Tecnología Convertir BD en MySQL de LATIN1 a UTF8

Detachable screens to avoid SSH disconnections

Categories Linux  Networking  Tecnología Convertir BD en MySQL de LATIN1 a UTF8

Expose WSL2 port to the network

Categories Data bases  Docker  Tecnología Convertir BD en MySQL de LATIN1 a UTF8

Recover corrupted Postgres DB WAL

Leave a Comment Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Recent Posts

  • Detachable screens to avoid SSH disconnections
  • Expose WSL2 port to the network
  • Rosaleda (parque El Retiro, Madrid)
  • Back to the painting table
  • Recover corrupted Postgres DB WAL

Categories

  • Aficiones
  • AI
  • Bricolage
  • Data bases
  • Docker
  • Escenografía
  • Eventos
  • Fotografía
  • Hardware
  • Linux
  • Networking
  • Partidas
  • Proxmox
  • Sin categoría
  • Tecnología
  • Utils
  • Viajes
  • Virtualization
  • Warhammer
  • YAML

Tags

anthill (1) apt (5) cellular-automatons (1) ceph (2) context (1) conways-life (1) cortador (1) debian (3) docker (9) docker-compose.yml (4) docker-swarm (5) DRY (1) El Imperio (2) Enanos (2) escenografía (3) fotos (3) GlusterFS (1) Guerreros del Caos (2) informática (1) Linux (8) M.2 (1) Mac (1) Madrid (2) maqueta (2) MariaDB (2) miniaturas (4) MySQL (2) NFS (2) NVMe (1) partida (2) poliestireno (1) portainer (1) proxmox (2) rocas (1) Sony A65 (2) SSH (5) ssh-key (1) Ubuntu (8) update (2) volume (1) Warhammer (11) Windows (3) WSL (2) WSL2 (2) YAML (1)

Archives

  • June 2024
  • May 2024
  • April 2024
  • February 2024
  • January 2024
  • September 2023
  • August 2023
  • June 2023
  • December 2021
  • April 2021
  • May 2020
  • April 2020
  • March 2020
  • November 2019
  • July 2018
  • February 2017
  • June 2015
  • April 2014
  • April 2011
  • January 2011
  • July 2010
  • June 2010
  • March 2010
  • November 2009
  • June 2009
  • December 2008
  • November 2008
  • October 2008
  • June 2008
  • May 2008
  • October 2007

Meta

  • Register
  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
Copyright © 2025 OCIO y TECnología - Powered by Nevothemes.
Offcanvas