Хороший инструмент для визуализации схемы БД? [закрытый]
есть ли хорошие инструменты для визуализации существующей схемы базы данных? Я использую MySQL, если это имеет значение.
в настоящее время я использую MySQL Workbench для обработки дампа сценария создания SQL, но это неуклюжий, медленный и ручной процесс для перетаскивания всех таблиц (что было бы хорошо, если бы это было не так медленно).
20 ответов:
нашел SchemaSpy довольно хорошо - вы должны запускать скрипт каждый раз, когда схема меняется, но это не так уж и важно.
Как указано в комментариях есть также GUI для него.
еще один хороший инструмент SchemaCrawler.
Я обычно использую SchemaSpy для этого, но недавно я нашел очень простую статью о sqlfairy который просто использует файл дампа для создания структурного графика
Мне нравится этот инструмент, называется просто DbSchema. Он написан на Java, поэтому он работает на OS X, Windows или Linux. Это немного неуклюжим, особенно когда дело доходит до печати, но из моего опыта они все такие. Это один из лучших из нескольких, которые я пробовал. Это делает хорошие, четкие схемы. Бесплатная пробная версия. Стоит около 120 $в зависимости от того, сколько лицензий вы покупаете.
Я бы порекомендовал жаба Data modeller
на Mac OS X вы можете использовать Sequel Pro
как о SQuirreL SQL Client? Как уже упоминалось в еще один такой вопрос, эта программа имеет возможность генерировать простую диаграмму ER.
вы пробовали функцию arrange > auto arrange в MySQL Workbench. Это может спасти вас от ручного перемещения таблиц вокруг.
DeZign для баз данных может быть интересно для вас. Вы можете перепроектировать и изменить существующие базы данных. Имеет функцию автоматического макета, а макет схемы не зацепляется при синхронизации модели данных с базой данных.
Visio профессиональный имеет встроенный инструмент обратного проектирования базы данных. Вы должны быть в состоянии использовать его с MySQL через драйвер ODBC. Это лучше всего работает, когда вы перепроектируете базу данных, а затем создаете диаграммы, перетаскивая их с панели таблицы и представления. Он будет перетаскивать любые объекты внешнего ключа и помещать их на диаграмму.
Я начинаю создавать собственный Perl скрипт на основе модуля SQL:: Translator (GraphViz). Вот такие первые результаты.
другой подход, но если вы используете Ruby on Rails попробуйте RailRoad:http://railroad.rubyforge.org
Я долго искал приличный и желательно бесплатный инструмент для linux и нашел это java-приложение, которое довольно хорошо (наконец!!):
http://sqldeveloper.solyp.com/
будучи Java, это кросс-платформенный (я запускаю его на Linux без проблем), и он будет подключаться к любой базе данных, для которой вы можете получить драйвер JDBC. т. е.: практически любая база данных.
Это довольно легко импортировать базу данных и получить визуальный (эээ) схемы базы данных. Функция автоматической компоновки также хороша, но обратите внимание, что она не выполняется автоматически, и вам нужно нажать кнопку "автоматическая компоновка" после импорта объектов на диаграмму.
приложение также является довольно хорошим общим инструментом администрирования базы данных / просмотра. В качестве одного небольшого примера я использую его вместо pgadmin для некоторой базовой разработки из-за простых тонкостей, таких как ширина столбца результатов SQL-запроса автоматически калибровка по размеру контента (что сводит меня с ума в pgadmin).
Я использую SQL:: Translator С DBIx:: Class
У меня есть DBIx::Class в моей цепочке инструментов в любом случае, и объединение его с SQL::Translator позволяет мне конвертировать схему во множество различных форматов. В основном сценарии инициализации SQL для разных серверов баз данных (что упрощает разработку на SQLite и переход на Postgresql для производства), но он также может выводить данные GraphViz, поэтому диаграммы тривиальны для генерации.
ER / Studio by Embarcadero является одним из самых дорогостоящих, но иерархический режим, который он представляет, безусловно, лучший для понимания моделей баз данных. Это делает написание запросов самой простой задачей в мире.
Это также невероятно с нормализацией, денормализацией, складированием, документацией и т. д.
недостатком является то, что это довольно дорогой инструмент, особенно когда вы идете мультиплатформенный.
когда вы говорите визуализировать схему базы данных, вы ссылаетесь на текстовый документ всех ваших таблиц, sprocs и т. д. или вы имеете в виду визуальное представление схемы и зависимости?
Я знаю, что Вы упомянули MySQL (и очень возможно, что он поддерживается сейчас, но я не уверен), но RedGate имеет ряд инструментов, которые делают это довольно простым. Это программа SQL Doc может взять всю вашу базу данных и создать для нее полномасштабную документацию по базе данных. язык SQL Dependency Tracker может дать вам визуальное представление всех ваших таблиц и показать их связи, или вы можете загрузить только определенные таблицы или sprocs, чтобы показать, что использует их или что они используют сами.
лет назад я использовал Data Architect. Я не знаю, если он все еще там.
вы можете перепроектировать существующую схему в диаграмму реляционной таблицы.
или вы можете пойти еще дальше и перепроектировать модель отношений сущности с сопровождающей диаграммой. Диаграммы ER были действительно полезны для меня при обсуждении данных с людьми, которые не были ни программистами, ни экспертами по базам данных.
иногда несколько ручных исправлений в Модель ЭР и схема Эр были необходимы до того, как она стала полезным инструментом коммуникации с заинтересованными сторонами.
SchemaBall делает визуализацию своим собственным интересным способом.
проблемы (ранее phpMinAdmin), веб-приложение для управления базами данных MySQL, рисует простую схему.
само программное обеспечение похоже на phpMyAdmin, но имеет больше возможностей, его легкий вес и поставляется в одном файле PHP.
alt текст http://img256.imageshack.us/img256/1112/adminer.png