Buena herramienta para visualizar esquema de base de datos? [cerrado]


¿Existen buenas herramientas para visualizar un esquema de base de datos preexistente? Estoy usando MySQL si importa.

Actualmente estoy usando MySQL Workbench para procesar un volcado de script SQL create, pero es torpe, lento y un proceso manual para arrastrar todas las tablas (lo que estaría bien si no fuera tan lento).

Author: Mat, 2009-01-11

20 answers

Encontré SchemaSpy bastante bueno - tienes que ejecutar el script cada vez que cambia el esquema, pero no es tan importante.

Como se señala en los comentarios, también hay una interfaz gráfica para ello.

Otra buena herramienta es SchemaCrawler.

 80
Author: rkj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-02 21:16:18

Suelo usar SchemaSpy para hacer esto, pero recientemente encontré un artículo muy simple en sqlfairy que solo usa el archivo de volcado para crear el gráfico de estructura

 12
Author: Hons,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-11-30 11:03:02

Me gusta esta herramienta, llamada simplemente DbSchema. Está escrito en Java por lo que se ejecuta en OS X, Windows o Linux. Es un poco torpe, especialmente cuando se trata de imprimir, pero por mi experiencia son todos así. Este es el mejor de los varios que he probado. Hace diagramas bonitos y claros. Prueba gratuita. Cuesta alrededor de 1 120 dependiendo de cuántas licencias compre.

 10
Author: Ethan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-06-23 13:23:57

Yo recomendaría Toad data modeller

 9
Author: Kb.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-06-06 11:35:33

En Mac OS X puedes usar Sequel Pro

 9
Author: andreiursan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-09-19 14:01:09

¿Qué tal el cliente SQL SQuirreL? Como se mencionó en otra pregunta SO, este programa tiene la capacidad de generar un diagrama ER simple.

 5
Author: Marc Novakowski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:34:01

¿Ha probado la función arrange > auto arrange en MySQL Workbench? Puede ahorrarle mover manualmente las mesas.

 2
Author: Brian Fisher,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-11 16:11:50

DeZign for Databases podría ser interesante para usted. Puede realizar ingeniería inversa y modificar las bases de datos existentes. Tiene una función de diseño automático y el diseño del diagrama no está mallado al sincronizar su modelo de datos con la base de datos.

 2
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-03-03 08:49:37

Visio professional tiene una herramienta de ingeniería inversa de base de datos incorporada. Debería ser capaz de usarlo con MySQL a través de un controlador ODBC. Funciona mejor cuando realiza ingeniería inversa en la base de datos y luego crea los diagramas arrastrándolos fuera del panel tablas y vistas. Arrastrará cualquier objeto de clave externa y los pondrá en el diagrama también.

 2
Author: ConcernedOfTunbridgeWells,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-06-23 14:12:43

Estoy empezando a crear propio script Perl basado en el módulo SQL::Translator (GraphViz). Aquí están primeros resultados.

 2
Author: mj41,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-08-02 07:38:14

Un enfoque diferente, pero si estás usando Ruby on Rails prueba RailRoad: http://railroad.rubyforge.org

 2
Author: tmarkiewicz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-06-02 16:22:02

Busqué durante mucho tiempo una herramienta decente, y preferiblemente gratuita, para linux y encontré esta aplicación Java que es bastante buena (¡finalmente!!):

Http://sqldeveloper.solyp.com/

Al ser Java, es multiplataforma (lo corro en Linux sin problemas) y se conectará a cualquier base de datos para la que pueda obtener un controlador JDBC. ie: prácticamente cualquier base de datos.

Es bastante fácil importar su base de datos y obtener una imagen visual ( ERM) del esquema de la base de datos. El la función de diseño automático también es buena, pero tenga en cuenta que no se realiza automáticamente y debe hacer clic en el botón "diseño automático" después de importar sus objetos en el diagrama.

La aplicación también es una herramienta de administración/navegación de bases de datos genéricas bastante buena. Como un pequeño ejemplo, lo uso en lugar de pgadmin para algunos trabajos de desarrollo base debido a sutilezas simples como el ancho de columna de los resultados de la consulta SQL que se ajustan automáticamente al contenido (lo que me vuelve loco en pgadmin).

 2
Author: Russ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-11-14 17:00:12

Utilizo SQL::Translator con DBIx:: Class

Tengo DBIx::Class en mi cadena de herramientas de todos modos, y combinarlo con SQL::Translator me permite convertir el esquema en muchos formatos diferentes. La mayoría de los scripts SQL de inicialización para diferentes servidores de bases de datos (lo que facilita el desarrollo en SQLite y el traslado a Postgresql para la producción), pero también puede generar datos de GraphViz, por lo que los diagramas son triviales de generar.

 1
Author: Quentin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-08-02 07:45:54

ER / Studio de Embarcadero es uno de los más costosos, pero el modo jerárquico que presenta es, con mucho, el mejor para comprender los modelos de bases de datos. Hace que la escritura de consultas sea la tarea más fácil del mundo.

También es increíble con la normalización, desnormalización, almacenamiento, documentación, etc.

La desventaja es que es una herramienta bastante cara, especialmente cuando vas multiplataforma.

 1
Author: Raj More,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-08-03 18:20:08

Cuando dice visualizar el esquema de la base de datos, se refiere a un documento de texto de todas sus tablas, sprocs, etc., o se refiere a una representación visual de su esquema y dependencias?

Sé que mencionaste MySQL (y es muy posible que ahora sea compatible, pero no estoy seguro), pero RedGate tiene una serie de herramientas que lo hacen bastante simple. Su programa SQL Doc puede tomar toda su base de datos y crear documentación de base de datos completa para ella. Dependencia SQL Tracker puede darle una representación visual de todas sus tablas y mostrar sus enlaces, o puede cargar solo ciertas tablas o sprocs para mostrar lo que las está usando o lo que están usando ellos mismos.

 0
Author: TheTXI,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-11 15:22:48

Hace años, solía usar Data Architect. No se si sigue ahí fuera.

Puede realizar ingeniería inversa de un esquema existente en un diagrama de tabla relacional.

O podría ir aún más lejos, y aplicar ingeniería inversa a un modelo de Entidad-Relación con un diagrama adjunto. Los diagramas ER fueron realmente útiles para mí al discutir los datos con personas que no eran programadores ni expertos en bases de datos.

A veces algunas correcciones manuales al modelo ER y ER el diagrama era necesario antes de que fuera una herramienta de comunicación útil con las partes interesadas.

 0
Author: Walter Mitty,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-14 13:57:04

SchemaBall está haciendo la visualización a su manera interesante.

 0
Author: mj41,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-08-02 07:41:48

Adminer (anteriormente phpMinAdmin), la aplicación web para administrar bases de datos MySQL, dibuja un diagrama simple.

El software en sí es similar a phpMyAdmin, pero tiene más características, es ligero y viene en un solo archivo PHP.

Texto alternativo http://img256.imageshack.us/img256/1112/adminer.png

 0
Author: Tom Pažourek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-07-20 21:44:56

Probé DBSchema. Características agradables, pero muy lento para una base de datos con alrededor de 75 tablas. Inutilizable.

 0
Author: deeeptext,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-27 21:48:27

Pruebe phpMyAdmin, que tiene una función de visualización y edición realmente agradable. Estoy bastante seguro de que incluso se puede exportar a exel desde él.

 0
Author: byteSlayer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-07-31 14:29:58