Есть ли какие-нибудь хорошие инструменты для визуализации уже существующей схемы базы данных? Я использую MySQL, если это важно.
В настоящее время я использую MySQL Workbench для обработки дампа сценария создания SQL, но это неуклюжий, медленный и ручной процесс перетаскивания всех таблиц (что было бы нормально, если бы это было не так медленно).
На мой взгляд, рабочая среда MySQL довольно хороша. Я последовал этому руководству и смог создать приличную диаграмму ER. «Создать ER-диаграмму базы данных в MySQL Workbench»: medium.com/@tushar0618/…






Когда вы говорите визуализировать схему базы данных, вы имеете в виду текстовый документ всех ваших таблиц, sprocs и т. д., Или вы имеете в виду визуальное представление вашей схемы и зависимостей?
Я знаю, что вы упомянули MySQL (и вполне возможно, что он сейчас поддерживается, но я не уверен), но RedGate имеет ряд инструментов, которые делают это довольно простым. Это программа SQL Doc может взять всю вашу базу данных и создать для нее полноценную документацию по базе данных. SQL Dependency Tracker может дать вам визуальное представление всех ваших таблиц и показать их связи, или вы можете загрузить только определенные таблицы или sprocs, чтобы показать, что их использует или что они используют сами.
Боюсь, что инструменты Red Gate - это только SQL Server.
Мне было нужно визуальное графическое представление, а не полноценный документ по базе данных, но все равно звучит интересно (даже если это только SQL Server - есть еще кое-что, использующее это).
Я бы порекомендовал Модельер данных жабы
Я нашел SchemaSpy неплохим - вам нужно запускать скрипт каждый раз при изменении схемы, но это не так уж и важно.
Как указано в комментариях, для него также есть Графический интерфейс.
Еще один хороший инструмент - SchemaCrawler.
Спасибо, я подумал, что интерфейс командной строки доставляет неудобства, конечно, как только я заработал, я заметил ссылку на графический интерфейс на главной странице, joachim-uhl.de/projekte/schemaspygui. Также следует отметить, что программа вставляет рекламу Google в полученный HTML.
Это хорошо. И стоит отметить, что нужно много побрить яка, чтобы он заработал.
Это здорово! Было легко заставить его работать. Просто следуйте инструкциям. Также следует отметить, что он работает не только с MySQL и: DB2, Derby, Firebird, HSQLDB, Informix, MaxDB, MS SQL, Oracle, PostgreSQL, SQLite, Sbase, Teradata.
Сохраните работу и используйте DbVisualizer (dbvis.com). Он работает с различными базами данных, включая SQLite, а их лицензионное соглашение позволяет использовать бесплатную версию для коммерческих проектов.
Вы пробовали использовать функцию упорядочивания> автоматического упорядочивания в MySQL Workbench. Это может избавить вас от необходимости вручную перемещать столы.
Да, это вроде как помогло, но не очень.
Стоит попробовать, я всегда в конечном итоге тоже успокаиваюсь, но иногда это помогает мне начать.
Как насчет Клиент SQuirreL SQL? Как упоминалось в еще один ТАК вопрос, эта программа имеет возможность генерировать простую диаграмму ER.
Несколько лет назад я использовал Data Architect. Я не знаю, там ли он еще.
Вы можете реконструировать существующую схему в диаграмму реляционной таблицы.
Или вы можете пойти еще дальше и перепроектировать модель Entity-Relationship с сопутствующей диаграммой. Диаграммы ER были действительно полезны для меня при обсуждении данных с людьми, которые не были ни программистами, ни экспертами по базам данных.
Иногда требовалось внести несколько ручных корректировок в модель ER и диаграмму ER, прежде чем она стала полезным инструментом коммуникации с заинтересованными сторонами.
Дизайн для баз данных может быть вам интересен. Вы можете реконструировать и модифицировать существующие базы данных. Имеет функцию автоматического макета, и макет диаграммы не сбивается при синхронизации вашей модели данных с базой данных.
Обратите внимание, что функция автоматического размещения не подходит для больших баз данных - это просто большой беспорядок. (например, пространство для диаграммы кажется ограниченным, и поэтому на правой границе скопилось много таблиц (в нашем случае 75 таблиц в одном месте). Я поигрался с различными вариантами макета, но результат ни в одном из вариантов.
Мне нравится этот инструмент, который называется просто DbSchema. Он написан на Java, поэтому работает в OS X, Windows или Linux. Это немного неуклюже, особенно когда дело касается печати, но по моему опыту все они такие. Это лучший из нескольких, которые я пробовал. Делает красивые четкие диаграммы. Бесплатная пробная версия. Стоит около 120 долларов в зависимости от того, сколько лицензий вы покупаете.
Отличный инструмент. Существует также бесплатная версия, в которой есть большинство замечательных функций (например, синхронизация с live db).
это отличный инструмент, он может даже генерировать виртуальные внешние ключи, вау!
Visio профессиональный имеет встроенный инструмент обратного проектирования базы данных. Вы должны иметь возможность использовать его с MySQL через драйвер ODBC. Лучше всего это работает, когда вы реконструируете базу данных, а затем создаете диаграммы, перетаскивая их с панели таблиц и представлений. Он перетащит любые объекты внешнего ключа и также поместит их на диаграмму.
Я начинаю создавать собственный Perl-скрипт на базе модуля SQL :: Translator (GraphViz). Вот первые результаты.
SchemaBall делает визуализацию своим интересным способом.
Я использую SQL :: Переводчик с DBIx :: Класс
В любом случае у меня есть DBIx :: Class в моей инструментальной цепочке, и объединение его с SQL :: Translator позволяет мне преобразовывать схему во множество различных форматов. В основном это инициализирующие сценарии SQL для различных серверов баз данных (что упрощает разработку на SQLite и переход на Postgresql для производства), но он также может выводить данные GraphViz, поэтому создание диаграмм несложно.
ER / Студия Embarcadero - один из самых дорогостоящих, но иерархический режим, который он представляет, безусловно, лучший для понимания моделей баз данных. Это делает написание запросов самой простой задачей в мире.
Это также невероятно с нормализацией, денормализацией, хранением, документацией и т. д.
Обратной стороной является то, что это довольно дорогой инструмент, особенно для мультиплатформенных.
Другой подход, но если вы используете Ruby on Rails, попробуйте RailRoad: http://railroad.rubyforge.org
Вы также можете проверить Составитель схемы для Rails 3.0+
Похоже, что железная дорога мертва; да здравствует железная дорога. github.com/preston/railroadygem install railroady
Администратор (ранее phpMinAdmin), веб-приложение для управления базами данных MySQL, рисует простую диаграмму.
Само программное обеспечение похоже на phpMyAdmin, но имеет больше функций, легкий вес и поставляется в виде одного файла PHP.
Возможно, это работает для тривиальных схем, но я попробовал это на схеме с 28 таблицами, и он просто дал мне чисто вертикальный список всех таблиц в алфавитном порядке с беспорядком вертикальных линий, пытающихся проиллюстрировать отношения. Больше не могло быть бесполезным.
Точнее, в моем случае 40 таблиц. Вы можете щелкнуть, чтобы перетащить его, но, как только вы выберете, вы не сможете выбрать.
Я долго искал приличный и желательно бесплатный инструмент для linux и нашел это java-приложение, которое неплохо (наконец-то !!):
http://sqldeveloper.solyp.com/
Будучи Java, он кроссплатформенный (я запускаю его в Linux без проблем), и он будет подключаться к любой базе данных, для которой вы можете получить драйвер JDBC. то есть: практически любая база данных.
Довольно легко импортировать вашу базу данных и получить визуальную (ERM) схему базы данных. Функция автоматического макета тоже хороша, но учтите, что это не выполняется автоматически, и вам нужно нажать кнопку «автоматический макет» после импорта ваших объектов на диаграмму.
Приложение также является довольно хорошим универсальным инструментом для администрирования / просмотра баз данных. В качестве одного небольшого примера я использую его вместо pgadmin для некоторых базовых разработок из-за простых тонкостей, таких как автоматическая подгонка ширины столбца результатов SQL-запроса для соответствия содержимому (что сводит меня с ума в pgadmin).
Я согласен с этим. Я искал любой инструмент с графическим интерфейсом для визуализации баз данных postgresql в Linux, и большинство из них не имеют успеха. Я только начал использовать SQL Developer, но это лучший бесплатный вариант, который я нашел до сих пор.
Я не могу дать новый ответ, поскольку вопрос закрыт, но инструмент, который вам нужен фактически, - это DbVisualizer (dbvis.com). Это фантастика ... намного лучше, чем то, что я рекомендовал в своем вопросе (если мое использование за последние несколько лет является каким-либо показателем).
Обычно для этого я использую SchemaSpy, но недавно я нашел очень простую статью о sqlfairy, в которой просто используется файл дампа для создания графа структуры.
+1 для sqlfairy не требуется JRE (как и большинство других ответов).
Я получил то, что мне нужно, от sqlfairy. Просто и быстро.
sqlfairy может использовать огромное количество дискового пространства для больших баз данных. Я запустил его для базы данных размером 615 МБ, и она вышла из строя после заполнения 18 ГБ, которые остались свободными на моем жестком диске.
Это старый комментарий ... Эти инструменты все еще находятся в разработке?
Я пробовал DBSchema. Хорошие функции, но очень медленные для базы данных с примерно 75 таблицами. Непригоден для использования.
Попробуйте PHPMyAdmin, у которого есть действительно хорошая функция визуализации и редактирования. Я почти уверен, что вы даже можете экспортировать, чтобы исключить из него.
в Mac OS X вы можете использовать Продолжение Pro
Настоятельно рекомендуется +1 Sequel Pro.
Думаю, этот ответ требует дополнительных пояснений: norbauer.com/rails-consulting/notes/…
Спасибо @fguillen! Давайте добавим объяснение прямо здесь (пока ссылка не оборвалась…). Всего 4 простых шага: 1.) Установите графвиз, он доступен в MacPorts (sudo port install graphviz) и в Homebrew (brew install graphviz). 2.) Экспорт файла Dot (в SequelPro перейдите в File> Export> Graphviz Dot и экспортируйте свою базу данных) 3.) Откройте терминал и конвертируйте точечный файл в SVG dot -Tsvg your_database.dot > your_database.svg4.) При необходимости конвертируйте сгенерированный SVG в JPG или PNG с помощью любого инструмента по вашему выбору (Inkscape, ImageMagick, GraphicsMagick и др.)
альтернативы чтению нет ... если вы не думаете, что это полезно apidocs.sugarcrm.com/schema/6.5.14/ce/tables/campaign_log.ht ml