Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] MySQL Workbench y character set

Estas en el tema de MySQL Workbench y character set en el foro de Mysql en Foros del Web. Buenas, tengo un esquema de BBDD volcado en UTF-8, lo cual significa que contiene acentos, diéresis y carácteres especiales. Necesito restaurar el esquema a una ...
  #1 (permalink)  
Antiguo 18/02/2016, 10:31
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Pregunta MySQL Workbench y character set

Buenas,

tengo un esquema de BBDD volcado en UTF-8, lo cual significa que contiene acentos, diéresis y carácteres especiales.

Necesito restaurar el esquema a una BBDD creada según:

Código:
create database nombre character set utf8 collate utf8_bin;
Utilizo MySQLWorkbench. Cuando abro el fichero de volcado SQL, me sale un cuadro de diálogo diciendo que dicho fichero tiene una codificación desconocida, y me pide que seleccione (escribiendo, no hay desplegable) una nueva codificación.

Por defecto me propone LATIN1, pero si elijo ésta, mis acentos se convierten en caracteres extraños.

¿cómo puedo hacer para que al abrir el fichero SQL se conserven los acentos y puedan ser insertados como tales en la BBDD?

Gracias!
  #2 (permalink)  
Antiguo 18/02/2016, 10:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: MySQL Workbench y character set

Por lo pronto, intenta restaurarlo usando mysqldump, desde la linea de comandos del sistema, no desde la consola de MySQL, ni desde MySQL Workbench.
Si eso no lo restaura correctamente, hay que analizar la codificación que tiene realmente el archivo en si. Bien puede ser que no sea lo que supones.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 18/02/2016, 12:55
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Por lo pronto, intenta restaurarlo usando mysqldump, desde la linea de comandos del sistema, no desde la consola de MySQL, ni desde MySQL Workbench.
Si eso no lo restaura correctamente, hay que analizar la codificación que tiene realmente el archivo en si. Bien puede ser que no sea lo que supones.
Hola.

El caso es que si edito el .sql con Notepad++ me salen los acentos, pero al importarlo con Workbench y convertirlo a LATIN1 (porque no me deja hacer otra cosa), éstos se pierden.

Gracias.
  #4 (permalink)  
Antiguo 18/02/2016, 13:26
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: MySQL Workbench y character set

Yo no he dicho nada de que lo edites de ningún modo.
Lo que te estoy diciendo es que lo restaures (o importes, me da lo mismo) usando mysqldump, que se debe usar en linea de comandos de sistema.
¿Se entiende claro lo que digo?

Lo que te propongo es una PRUEBA para verificar si el problema es realmente de chaset del archivo, o de charset interpretado por MySQL Workbech.

Por otro lado, no es fiable usar un editor externo a MySQL para verificar el charset, ya que esos editores leen la cabecera del archivo e interpretan el contenido según el que esté declarado en él, lo que NO SIGNIFICA que sea el que el backup debe tener.

SI quieres una prueba básica, toma el Notepad de Windows, abre ese backup y luego prueba grabarlo con otro nombre. Al pie del dialog verás el charset que se usará para guardarlo. Dime que dice.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 18/02/2016, 14:47
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

OK. Probaré a hacer lo que dices. Intentaba ahorrarme en la medida de lo posible la línea de comandos :).

Gracias!
  #6 (permalink)  
Antiguo 22/02/2016, 09:42
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

Cita:
Iniciado por gnzsoloyo Ver Mensaje
SI quieres una prueba básica, toma el Notepad de Windows, abre ese backup y luego prueba grabarlo con otro nombre. Al pie del dialog verás el charset que se usará para guardarlo. Dime que dice.
Dice: codificación ANSI.
  #7 (permalink)  
Antiguo 22/02/2016, 09:46
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: MySQL Workbench y character set

Bueno... eso puede ser el origen de todo. Si fuese realmente UTF-8 debería decirlo. ANSI no es UTF-8.

¿Lo editaste con alguna aplicación, es decir abrirlo y guardarlo luego?

¿Hay posibilidad de conseguir un backup fresco de esa base? Me refiero a alguna que no se haya corrompido en el charset.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 22/02/2016, 12:45
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Bueno... eso puede ser el origen de todo. Si fuese realmente UTF-8 debería decirlo. ANSI no es UTF-8.

¿Lo editaste con alguna aplicación, es decir abrirlo y guardarlo luego?

¿Hay posibilidad de conseguir un backup fresco de esa base? Me refiero a alguna que no se haya corrompido en el charset.
Hola!

No. Es un SQL tal cual salió del sqldump. Y sí, hay posibilidad de backup fresco, pero no sé si he de ponerle algunas opciones especiales al sqldump.

Gracias!
  #9 (permalink)  
Antiguo 22/02/2016, 13:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: MySQL Workbench y character set

Ese backup no parece haber salido puro de mysqldump. Ese aplicativo los genera en UTF-8 por default y no es el caso.

Vuelve a crearlo y restauralo con el cliente Mysql. No uses MySQL Workbench.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 23/02/2016, 05:10
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Ese backup no parece haber salido puro de mysqldump. Ese aplicativo los genera en UTF-8 por default y no es el caso.

Vuelve a crearlo y restauralo con el cliente Mysql. No uses MySQL Workbench.
Ni por ésas. Cuando paso por FTP el fichero con acentos y lo abro desde el RedHat, ya no tiene acentos.

El propio RedHat no me está soportando acentos.

Hago echo $LANG y me sale es_ES.UTF-8. No entiendo nada...
  #11 (permalink)  
Antiguo 23/02/2016, 07:09
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: MySQL Workbench y character set

Cita:
Cuando paso por FTP el fichero con acentos y lo abro desde el RedHat, ya no tiene acentos.
Bueno, alli tienes una pista...
El FTP está corrompiendo los datos. Es posible que haya algun error en el modo del FTP que esté tomando 7 bits (ASCII) en lugar de los 8 bits (UTF-8).
Usualmente no debería ocurrir, pero te sugeriría que verificaras eso.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #12 (permalink)  
Antiguo 23/02/2016, 08:15
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Bueno, alli tienes una pista...
El FTP está corrompiendo los datos. Es posible que haya algun error en el modo del FTP que esté tomando 7 bits (ASCII) en lugar de los 8 bits (UTF-8).
Usualmente no debería ocurrir, pero te sugeriría que verificaras eso.
Tengo puesto en juego de caracteres Forzar UTF-8.

Además, como digo, nada en el servidor aparece con acentos, sino con caracteres raros.

Gracias!
  #13 (permalink)  
Antiguo 23/02/2016, 09:55
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: MySQL Workbench y character set

Ya vi que estás siguiendo el tema en el foro de Unix/Linux (http://www.forosdelweb.com/f41/red-hat-acentos-1147877/)
TE conbviene seguir el tema por ese lado, porque no hay error de MySQL ni de Workbench. Es un problema originado en el FTP y no de BBDD.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #14 (permalink)  
Antiguo 23/02/2016, 10:01
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 21 años, 1 mes
Puntos: 1
Respuesta: MySQL Workbench y character set

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Ya vi que estás siguiendo el tema en el foro de Unix/Linux (http://www.forosdelweb.com/f41/red-hat-acentos-1147877/)
TE conbviene seguir el tema por ese lado, porque no hay error de MySQL ni de Workbench. Es un problema originado en el FTP y no de BBDD.
Ni de uno ni de lo otro. Ya lo he resuelto. Me conectaba por putty y el juego de caracteres ahí es donde estaba mal.

Gracias de todas formas!

Etiquetas: set, sql, workbench
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:07.