2008-11-20 13 views

Respuesta

0

Si tiene acceso a phpMyAdmin podría ejecutar una exportación de la base de datos. Generará una larga lista de comandos SQL para crear todo el esquema e insertar opcionalmente todos los datos en sus respectivos lugares.

También es posible realizar todo esto desde la línea de comandos.

Si tiene muchos datos es posible que desee hacerlo todo en pedazos, scripts SQL individuales para cada tabla y las inserciones en cada uno.

Luego, en el lado M $ SQL simplemente cree la base de datos, conéctese a SQL Query Analyzer o SQL Management Studio, copie y pegue sus scripts SQL en la ventana y ejecútelos.

Es probable que la mayoría de los códigos MySQL funcionen en M $ SQL. Si se encuentra con problemas, puede establecer un nivel de compatibilidad en la exportación de MySQL para adaptarse mejor a su entorno de destino.

Si sus datos son correctos, siempre que el esquema coincida, todo lo que tiene que guiar es la importación/exportación de datos, ¡no script el esquema y CIERTAMENTE NO aplique scripts !!!

EDITAR: si tuviera que hacer alguna transformación, creo que puede exportar a M $ Excel, sin duda a un archivo CSV, luego en la importación de M $ SQL haga sus asignaciones y tal.

+0

¿Seguro que todos los tipos de datos MySQL son compatibles con tipos de datos Mssql ??? – Fred

0

Mi equipo hizo recientemente lo contrario, SqlServer a MySql, utilizando MySql Migration Toolkit (para mover una instalación de Fogbugz de Windows a Linux) y funcionó muy bien. Tuvimos problemas con una herramienta llamada MSSQL2MySql, no funcionó tan bien. No estoy seguro de si el kit de herramientas de migración maneja en la dirección opuesta, pero podría valer la pena verlo.

8
-- Create Link Server 

EXEC master.dbo.sp_addlinkedserver 
@server = N'MYSQL', 
@srvproduct=N'MySQL', 
@provider=N'MSDASQL', 
@provstr=N'DRIVER={MySQL ODBC 5.1 Driver}; SERVER=localhost; _ 
    DATABASE=tigerdb; USER=root; PASSWORD=hejsan; OPTION=3' 

-- Import Data 

SELECT * INTO testMySQL.dbo.shoutbox 
FROM openquery(MYSQL, 'SELECT * FROM tigerdb.shoutbox') 
+0

Lo he usado. Funciona bien para crear el esquema básico de la tabla y copiar las filas (lo cual es realmente agradable). Aunque no vi venir mis índices o claves. Supongo que algunos tipos de datos pueden fallar, pero hasta ahora todo va bien. ¡Gracias! –

+0

Me estoy encontrando con todo tipo de errores con este enfoque. Por ejemplo, las columnas varchar con longitudes superiores a 4000 requieren que use el controlador ANSI, de lo contrario, intenta crear una columna nvarchar y falla, porque su longitud máxima especificada es 4000. Además, sin configurar opciones muy específicas como "Return SQL NULL" DATA para fecha cero "y" Habilitar SQL_AUTO_IS_NULL "y" Enlace fecha mínima como fecha cero ", hay más errores. Sin opciones relevantes para configurar, ahora obtengo "Error al convertir el tipo de datos DBTYPE_DBTIMESTAMP a datetime2", y espero encontrar aún más. – Triynko

+0

Me encontré con el problema indicado como "Error al convertir el tipo de datos DBTYPE_DBTIMESTAMP a fecha y hora". He tenido que exportar los datos de MySql primero a CSV y luego a MS-SQL Server, ambos pasos usando Data Transformation Services guardado como VB módulo y fue bastante sencillo. Huelga decir que los campos se exportarán como varchar (8000). Pero eso fue mejor para mí en lugar de DBType_DBTIMESTAMP campos no se exportan en absoluto y rompiendo entre. –

1

Para convertir MySQL to MS SQL Server base de datos que puede utilizar Microsoft SQL Server Database Migration Assistant

+0

Este es el enlace actual http: //blogs.msdn.com/b/ssma/ Además de MySQL, es compatible con Oracle, Sybase y MS Access. –

Cuestiones relacionadas