Совсем перестало радовать рисование и ручное написание инструкций для создания баз данных. По этой причине задумался над выбором хорошего инструмента. В принципе, существуют приложения для этих целей, но что выбрать? Хочется найти что-то в духе MySQL Workbench от MySQL AB. Есть какие-то иные (уже стабильно работающие) средства, которые позволяют выбрать сущности и связи, настроить конкретизированные атрибуты и создать на этой основе БД + выполнить обратное действие - проанализировать БД и рассчитать её модель? Кто и что использует, что эффективнее применять?
Можно и так выразиться... Поглядите на продукт, указанный в первом посте. Это не монитор какой-нибудь - это средство для проектирования, построения моделей баз данных. В нём реализовано то, что обычно рисуешь на бумажке, а потом задалбливаешь в том же phpMyAdmin - но если применять такой продукт, то придумал в голове, смоделировал - и получил уже без всякой лишней возни предварительный вариант БД для конечной оптимизации.
мускул воркбэнч разрабатывается по мотивам дбдизайнера -- свободно распространяемой программы, позволяющей рисовать таблицы, определять связи, настраивать индексы и синхронизировать всё это с работающей базой (причём в обе стороны). сами мускуловцы советуют пока использовать дбдизайнер, так как их продукт будет в альфе ещё довольно долго. http://www.softpedia.com/get/Internet/Servers/Database-Utils/DBDesigner.shtml
2stas_t: Спасибо, кажется, это то, что я искал. Только я что-то пока сразу не разобрался: автоматически построить модель существующей базы это приложение может, или нет? Какое-то подключение к базе, синхронизация... можно смоделировать базу и создать, а извлечь модель из существующей базы - этого я не могу найти. Пока хелп смотрю, но что-то тоже не вижу, как это сделать (а главное - можно ли?). Не подскажешь? Ещё забавная штучка обнаруживась - Dia. Но это только для рисования сущностей, атрибутов и связей пригодно - на этом её функционал, практически, исчерпывается.
связи надо восстанавливать вручную, т.к. мускул по умолчанию не поддерживает foreign key-отношения в качестве отдельных объектов и они не восстанавливаются по reverse engineering