¿Herramienta para exportar datos con todos los datos relacionales? [cerrado]


12

¿Existe una herramienta para exportar datos de filas seleccionadas en una tabla con todos los datos almacenados en otras tablas en otras tablas vinculadas por diseño relacional?

El propósito es facilitar las migraciones de bits de datos entre servidores para migraciones ad hoc. Estoy buscando específicamente una herramienta para MySQL InnoDB con claves foráneas definidas.


1
¿Está solicitando exportar las relaciones o los datos relacionados? también, que rdbms?
swasheck

@swasheck, perdón por eso, actualizó la pregunta para mayor claridad
James McMahon

2
Después de haber escrito un programa que hace esto (para SQL Server), te puedo decir que no es para los débiles de corazón - Yo fuertemente recomiendo el uso de software de 3 ª parte para hacer esto si está disponible.
Jon Seigel

... También asegúrese de tener una manera de conciliar los datos migrados para asegurarse de que todo migró correctamente .
FrustratedWithFormsDesigner

2
Jailer dice que puede hacer eso: sourceforge.net/projects/jailer (aunque no lo he usado)
a_horse_with_no_name

Respuestas:


9

En realidad, podrías escribirlo tú mismo usando mysqldump .

Aquí mis publicaciones usando la opción --where para mysqldump:

Con una buena revisión de sus tablas y un poco de grasa de codo SQL, puede realizar un script del volcado para cualquier tabla y sus registros secundarios con las referencias de clave externa correspondientes.

Darle una oportunidad !!!


Finalmente terminé escribiendo una lógica personalizada para hacer la serialización y deserialización de los objetos. Creo que las secuencias de comandos personalizadas son probablemente el camino a seguir.
James McMahon

0

Esto sería casi imposible de lograr en MySQL a menos que todas las tablas tuvieran restricciones FOREIGN KEY necesarias definidas (no garantizado en absoluto, considerando que MyISAM no las admite).

Si todas las tablas tuvieran los FK, aún sería una tarea difícil y no conozco una herramienta que exporte un subconjunto.

Sé que Navicat intentará aplicar ingeniería inversa a las relaciones, pero no creo que arroje un subconjunto de datos.


Para su primer punto, estoy usando InnoDB con restricciones relacionales definidas
James McMahon
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.