Como exportar a base de dados do servidor SQL para o MySQL? [duplicado]

esta pergunta já tem uma resposta aqui:

estou a tentar converter de um ficheiro de cópia de segurança da base de dados do servidor SQL (.bak) para o MySQL. esta pergunta e as respostas foram muito úteis, e eu importei com sucesso a base de dados, mas agora estou preso na exportação para MySQL.

a o Kit de ferramentas de migração MySQL foi sugerido, mas parece ter sido substituído pelo MySQL Workbench. É possível usar a bancada de trabalho MySQL para migrar do servidor SQL da mesma forma que a ferramenta de migração funcionou?

ou a caixa de ferramentas de migração ainda está disponível em algum lugar?

Author: Community, 2010-10-12

11 answers

Você pode usar o MySQL Workbench que oferece uma forma de migrar rapidamente dados e aplicações do servidor SQL da Microsoft para o MySQL empregando menos tempo e esforço.

Esta ferramenta tem muitas características fixes como:

  • database migrations - activa as migrações do Microsoft SQL Server, Sybase ASE e PostgreSQL.
  • Gestão de projectos de migração - permite configurar, copiar, editar, executar e prever.

Leia mais http://www.mysql.com/products/workbench/migrate/

 43
Author: Javier Cadiz, 2013-03-04 22:23:45

USO o sqlyog para migrar do mssql para o mysql. Eu tentei toolkit de Migração e workbench mas gostei sqlyog para o seuSJA . Eu poderia agendar o processo de importação e poderia fazer importação incremental usando a cláusula onde.

enter image description here

 19
Author: Man_k, 2012-08-03 09:22:07

O PhpMyAdmin tem um assistente de importação que lhe permite importar também um tipo de ficheiro MSSQL.

Ver http://dev.mysql.com/doc/refman/5.1/en/sql-mode.html para os tipos de programas DB que suporta.

 6
Author: David d C e Freitas, 2015-07-22 20:40:18

Como mencionado acima, se os seus dados contiverem caracteres de tabulação, vírgulas ou linhas novas nos seus dados, então será muito difícil exportá-los e importá-los com CSV. Os valores transbordarão dos Campos e você receberá erros. Este problema é ainda pior se algum dos seus campos longos contém texto multi-linhas com caracteres newline neles.

O meu método nestes casos é usar o utilitário BCP linha de comandos para exportar os dados do servidor SQL, e depois usar o ficheiro de dados de carga .. NA TABELA comando no MySQL para ler o ficheiro de dados de volta. BCP é um dos mais antigos utilitários de linha de comandos SQL Server (datando do nascimento do servidor SQL - v6.5), mas ainda está por aí e ainda é uma das maneiras mais fáceis e mais confiáveis de obter dados para fora.

Para usar esta técnica, você precisa criar cada tabela de destino com o mesmo esquema ou equivalente em MySQL. Faço isso clicando com o botão direito na Base de dados do SQL enterprise manager,em seguida, Tarefas - > Gerar Scripts... e criar um script SQL para todas as mesas. Você deve então converter o script para SQL compatível com MySQL à mão (definitivamente a pior parte da tarefa) e, finalmente, executar os comandos de tabela criar na base de dados MySQL para que você tenha tabelas correspondentes à coluna de versões do servidor SQL-sábio, vazio e pronto para os dados.

Então, exporta os dados do lado MS-SQL da seguinte forma.

bcp DatabaseName..TableName out TableName.dat -q -c -T -S ServerName -r \0 -t !\t!

(Se estiver a usar o SQL Server Express, use o valor A-S como so: - S "ComputerName\SQLExpress")

Isso irá criar um ficheiro nome de tabuleiro.dat, com campos delimitados ![tab]! e linhas delimitadas por caracteres \0 NUL.

Agora copia o .dat files into / tmp on the MySQL server and load on the MySQL side like so:
LOAD DATA INFILE '/tmp/TableName.dat' INTO TABLE TableName FIELDS TERMINATED BY '!\t!' LINES TERMINATED BY '\0';

Não se esqueça que as tabelas (TableName neste exemplo) devem ser criadas já no lado MySQL.

Este procedimento é dolorosamente manual quando se trata de converter o esquema SQL sobre, no entanto ele funciona mesmo para o mais difícil dos dados e porque ele usa arquivos planos que você nunca precisa convencer o servidor SQL a falar com MySQL, ou vice-versa.

 5
Author: Professor Falken, 2014-02-04 08:06:11

Você pode fazer isso facilmente usando Ferramenta de carregamento de dados . Eu já fiz isso antes de usar esta ferramenta e achei-a boa.

 4
Author: Kevin, 2012-07-07 04:39:40

Se tiver um dump SQL compatível com MSSQL, poderá convertê-lo para consultas MySQL, uma a uma, usando esta ferramenta 'online'

Http://burrist.com/mstomy.php

Espero que te tenha poupado tempo.
 4
Author: HimalayanCoder, 2014-02-24 16:02:48

Parece-me que está correcto: o Kit de ferramentas de migração deverá ser integrado com o MySQL Workbench - mas acho que isto ainda não foi concluído. Veja o anúncio de fim de vida para as ferramentas GUI MySQL (que incluíam a caixa de ferramentas de migração):

Http://www.mysql.com/support/eol-notice.html

O MySQL mantém os arquivos dos pacotes de ferramentas GUI MySQL:

Http://dev.mysql.com/downloads/gui-tools/5.0.html

 2
Author: Martin, 2010-10-18 04:45:13

Usei o texto de ligação abaixo na página avançada do Kit de ferramentas de migração MySQL para ligar à instância do servidor de SQL 2008:

jdbc:jtds:sqlserver://"sql_server_ip_address":1433/<db_name>;Instance=<sqlserver_instanceName>;user=sa;password=PASSWORD;namedPipe=true;charset=utf-8;domain= 

Normalmente o parâmetro tem "systemName\instanceName". Mas no acima, não adicione "systemName\" (use apenas o InstanceName).

Para verificar o nome do instanceName, vá aos Serviços.MSC e verifique o nome do DisplayName da instância MSSQL. Ele mostra semelhante ao mssql$instanceName. Espero que isto ajude na conectividade MSSQL. do kit de ferramentas de migração mysql.
 2
Author: rajesh.sampangiramiaih, 2011-08-25 12:25:12

O Kit de ferramentas de migração MySQL (1.1.10) ainda está disponível para download a partir daqui:

Http://downloads.mysql.com/archives.php?p=MySQLDeveloperSuite&v=1.1.10

 1
Author: Matias Perrone, 2012-05-15 14:32:04

OS Downloads já não estão disponíveis no sítio web oficial ( http://dev.mysql.com/downloads/gui-tools/5.0.html em vez disso, dê uma olhada aqui: http://download.softagency.net/MySQL/Downloads/MySQLGUITools/

 0
Author: Marco C., 2012-07-06 10:04:33
Tinha alguns dados que tinha de obter do mssql para o mysql, tinha dificuldade em encontrar uma solução. Então o que eu fiz no final (um pouco de uma longa e ventosa maneira de fazê-lo, mas como último recurso ele funciona) foi:
  • Abra a base de dados mssql no sql server management studio express (I used 2005)
  • abre cada tabela por vez e
  • Carregue no canto superior esquerdo para seleccionar a tabela inteira:

  • Copiar os dados para a área de transferência (ctrl + v)

  • Abrir ms excel
  • pasta dados da área de transferência
  • Salve o arquivo excel como .csv
  • Repita o que precede para cada tabela
  • Agora você deve ser capaz de importar os dados para mysql
Espero que isto ajude.
 0
Author: Dave, 2013-02-20 19:24:00