Automatycznie generuj schemat bazy danych MySQL [zamknięte]

349

Mam dość otwierania Dii i tworzenia schematu bazy danych na początku każdego projektu. Czy istnieje narzędzie, które pozwoli mi wybrać określone tabele, a następnie utworzyć dla mnie schemat bazy danych na podstawie bazy danych MySQL? Najlepiej pozwoli mi to później edytować diagram, ponieważ żaden z kluczy obcych nie jest ustawiony ...

Oto, co obrazuję schematycznie (przepraszam za okropny projekt danych, nie zaprojektowałem go. Skupmy się na koncepcji diagramu, a nie na faktycznych danych, które reprezentuje on w tym przykładzie;)):

diagram zobacz pełny schemat

cmcculloh
źródło
możesz użyć projektanta phpmyadmin
Tamer Awad
W tym celu można również użyć wbudowanego projektanta bazy danych w dbForge Studio for MySQL.
Devart,

Odpowiedzi:

425

Wypróbuj MySQL Workbench, wcześniej DBDesigner 4:

http://dev.mysql.com/workbench/

Ma to tryb „Reverse Engineer Database”:

Baza danych -> Inżynier odwrotny

wprowadź opis zdjęcia tutaj

Michael Stum
źródło
7
@James: Nadal działa dobrze, kliknij Pobierz Workbench 5.2.16 (prawy górny róg), a następnie „Nie, dziękuję, zabierz mnie do pobierania” i powinno działać - przynajmniej dla Windows, nie wypróbowałem żadnej innej platformy .
Michael Stum
5
@ michael-stum Uważam, że MySQL workbench jest bardzo pomocny, ale okazuje się, że funkcja bazy danych inżynierii wstecznej nie łączy automatycznie tabel, więc tabele nadal wymagają zmiany układu.
David LeBauer,
5
Zauważ, że jest to w repozytoriach Ubuntu jako mysql-workbench.
mlissner
37
Znajdziesz to w menu „Baza danych -> Inżynier odwrotny” pod zakładkami DB.
h2ooooooo
11
W tym celu nie musisz nawet łączyć się z bazą danych. Wyeksportuj bazę danych MySQL przy użyciu opcji „tylko struktura”. W MySQL Workbench przejdź do „Plik -> Nowy model”, a następnie „Plik -> Import -> Inżynieria wsteczna MySQL Utwórz skrypt ...” i zaznacz pole „Umieść zaimportowane obiekty na diagramie”.
Liam,
65

Ostatnio zacząłem używać http://schemaspy.sourceforge.net/ . Korzysta z GraphViz i uderza mnie równowaga między użytecznością a prostotą.

Reinderien
źródło
3
Używam go też to świetne narzędzie, tutaj jak to skonfigurować progrnotes.blogspot.com/2011/05/…
Sergey
1
schemaspy tworzy interaktywny schemat (patrz schemaspy.sourceforge.net/sample ), który jest po prostu statycznymi plikami HTML, które można przechowywać i używać wszędzie. MySQL Workbench nie tworzy interaktywnego schematu (tylko pliki graficzne lub pdf), a ponadto nie automatycznie i ładnie przestawia tabele. W przypadku automatyzacji (kompilacje nocne tworzą zaktualizowany schemat), schemaspy również pasuje do rachunku, ponieważ jest to całkowicie wiersz poleceń.
Long Vu,
+1 To było jedyne narzędzie, które zrobiło to, co chciałem: automatycznie wygenerowało dokumentację DB w momencie wydania.
Lennart Rolland
Uderza mnie wiele błędów, które otrzymuję, oraz instalacje, które muszę wykonać, aby działały w systemie Linux.
Damir Olejar
1
@DamirOlejar musisz mieć zainstalowaną stabilną wersję graphviz (alias dot), nie polecam kompilowania jej samodzielnie. doprowadzi to do innej wersji, która nie rozpoznaje PNG i tym samym zawiedzie Schemaspy. / zresztą po skonfigurowaniu to narzędzie jest całkiem
fajne
24

Na komputerze Mac SQLEditor zrobi to, co chcesz.

mlambie
źródło
Wygląda na to, że mam ten sam problem, co ja z MySQLWorkbench, relacja między tabelami nie jest wyświetlana.
Czy to ma znaczenie
6

Ten http://code.google.com/p/database-diagram/ przebuduje Twoją bazę danych. Po prostu wykonaj eksport „tylko struktury”, a następnie wklej kod SQL do narzędzia.


źródło
Nie łączy kluczy obcych (mysql), po prostu wyświetla tabele z wartościami i nie pozwala na większy ekran, aby dopasować je wszystkie razem.
Damir Olejar
4

Wierzę, że DB Designer robi coś takiego. I myślę, że mają nawet darmową wersję.

edytuj Nieważne. Link Michaela jest znacznie lepszy.

Mark Biek
źródło
4

MySQL Workbench działał jak urok.

Właśnie wykonałem kopię zapasową struktury bazy danych w skrypcie SQL i użyłem jej w „Utwórz model EER z skryptu SQL” programu MWB 5.2.37 dla systemu Windows.

Tauri Alfa
źródło
4

W MySql Workbench (6.0) możliwe jest wygenerowanie jednego diagramu na podstawie utworzonych tabel. W tym celu należy uzyskać dostęp do paska narzędzi, nacisnąć Model i przesłać Utwórz schemat z obiektów katalogu i gotowe!

Hugo Silva
źródło
3

Visual Paradigm dla UML 9.0

To niesamowite, że kiedyś pracowałem z ławką mysql, ale w przypadku dużych baz danych (coś w rodzaju ponad 300 tabel) nie będzie działać zbyt dobrze, ale odwrotna baza danych według paradygmatu działa o wiele lepiej.

MB2015
źródło
Którą edycję VP posiadasz? Mam starą kopię v7, ale w tej wersji inżynieria wsteczna jest tylko w (drogiej!) Edycji dla przedsiębiorstw.
Guy Rixon,
Czy mogę wygenerować diagram z bazy danych na żywo za pomocą wydania społeczności?
David Ferenczy Rogožan
2

Wypróbuj SchemaBank . Wspierają także inżynierię wsteczną.

Leigh Pyle
źródło
wydaje się być zaniechany
Wolfgang Jacques
1

Wypróbuj Vertabelo !

To internetowy modeler baz danych, który obsługuje inżynierię wsteczną.

Wystarczy utworzyć bezpłatne konto Vertabelo , zaimportować istniejącą bazę danych do Vertabelo i voila - twoja baza danych znajduje się w Vertabelo!

Obsługuje następujące bazy danych:

  • PostgreSQL,
  • MySQL,
  • Wyrocznia,
  • IBM DB2,
  • HSQLDB,
  • MS SQL Server.
Bartek
źródło
0

Oto narzędzie, które generuje diagramy relacyjne z MySQL (obecnie w systemie Windows). Użyłem go w bazie danych zawierającej 400 tabel. Jeśli schemat jest zbyt duży dla pojedynczego diagramu, dzieli się na mniejsze. Prawdopodobnie skończysz z wieloma diagramami i możesz nawigować między nimi, klikając prawym przyciskiem myszy. Wszystko to wyjaśniono w linku poniżej. Narzędzie jest bezpłatne (jak w darmowym piwie), autor sam korzysta z niego przy konsultacjach i pozwala innym osobom z niego korzystać. http://www.scmlite.com/Quick%20overview

Ludovic Aubert
źródło
2
Obecnie ta domena nie istnieje
dstudeba
-1

Tryb „Reverse Engineer Database” w Workbench jest tylko częścią wersji płatnej, a nie darmowej.

John Downey
źródło
37
Jeśli to prawda, już nie jest.
Ian Hunter,
1
Działa dobrze na nowej, bezpłatnej kopii Workbench pobranej dzisiaj.
Guy Rixon,
Tak, działa w wersji darmowej, ale ponieważ jest dość przekonany o modyfikowaniu schematu dla niektórych rodzajów relacji, więc nie jest tak użyteczny, jak można by pomyśleć do dokumentowania istniejącego schematu, który nie przestrzega jego konwencji.
jerseyboy
Nie jestem pewien, gdzie znaleźć wersję ławki sql z kartą inżynierii odwrotnej, ponieważ w linku jest obsługiwana w wersji komercyjnej, a nie w społeczności dev.mysql.com/doc/workbench/en/wb-data-modeling-menus.html :(
Dreamweaver,