No se puede importar localmente la base de datos SQL codificada UTF-8 en Mac

23

Estaba importando una base de datos SQL codificada UTF-8 confirmada en Sequel Pro en Mac y recibí este error a la mitad:

Se produjo un error al leer el archivo, ya que no se pudo leer en la codificación que seleccionó (Detección automática - Unicode (UTF-8)).

Solo se ejecutaron 1273 consultas.

¿Es esto porque el archivo de la base de datos era originalmente de una máquina Windows y sus saltos de línea rellenaron cosas?

Me imagino que obtendré este error incluso si intento enviar la misma base de datos a través de la transferencia de archivos a un servidor, entonces, ¿cómo puedo solucionar su codificación?

-- MySQL dump 10.13  Distrib 5.5.40-36.1, for Linux (x86_64)
--
-- Host: localhost    Database: *****
-- ------------------------------------------------------
-- Server version   5.5.40-36.1-log

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `******`
--
smokerockspunchcops
fuente
¿Qué texto causó el problema?
Rick James
no lo dije, pero supongo que es un salto de línea codificado de Windows
smokerockspunchcops
Guardar el archivo en el bloc de notas tiene la opción de codificación en la parte inferior. Abra el archivo en el bloc de notas en Windows y guárdelo como formato utf-8 y luego intente cargarlo en MySQL
Nawaz Sohail
¿Entonces el archivo no es real utf-8? Si estoy en una Mac, ¿puedo hacer lo mismo con su visor de texto predeterminado para solucionarlo?
smokerockspunchcops
Como Nawaz escribió anteriormente, abra el archivo en un editor de texto (utilicé TextWrangler en Mac) y vuelva a guardarlo en formato utf-8.
Jojje

Respuestas:

52

Basado en esta publicación de blog

http://ilikekillnerds.com/2014/08/fixing-sequel-pro-sql-encoding-error-for-imported-sql-files/

Al importar el volcado de la base de datos, debe seleccionar Western (Mac OS Roman) como formato de codificación para que el archivo se importe sin problemas.

liangzan
fuente
1
¿Alguien sabe por qué esto funciona? Realmente me gustaría saber qué problema existía con UTF-8 (o qué problema con Windows), que no me permitió importar originalmente.
Douglas.Sesar
1
Gracias, esto también funciona para los volcados de MySQL que se generan en CentOS.
Alex
Confirmo que esto funciona en MacOS High Sierra 10.13.6. gracias @liangzan
Ahmad Mushtaq
Esto también funciona con Sequel Pro (Nightly) en Mojave
Urs
Esto funcionó correctamente para un volcado de MySQL que se originó en Linux / Mysql y necesitaba importarse a través de SSH a una base de datos MariaDB 10. Gracias.
HongPong