Veritabanı şemasını görselleştirmek için iyi bir araç? [kapalı]


137

Önceden var olan bir veritabanı şemasını görselleştirmek için iyi araçlar var mı? Önemli olursa MySQL kullanıyorum.

Şu anda bir SQL oluşturma komut dosyası dökümü işlemek için MySQL Workbench kullanıyorum, ama (bu kadar yavaş olmasaydı iyi olurdu) hakkında tüm tabloları sürüklemek için tıknaz, yavaş ve manuel bir işlemdir.


bir şey okumak için bir alternatif yok ... bunun yararlı olduğunu düşünmüyorsanız apidocs.sugarcrm.com/schema/6.5.14/ce/tables/campaign_log.html
gcb

2
Bu soruyu softwarerecs.stackexchange.com adresinden tekrar sordum ve mevcut çözümüm için herhangi bir alternatifi memnuniyetle karşılıyoruz.
Jeroen

MySQL için dbForge Studio kullanarak mysql şemalarını görselleştirin . Veritabanı Tasarımcısı ücretsiz Express sürümüne dahildir.
Devart

Yanıtlar:


83

SchemaSpy'ı oldukça iyi buldum - şema her değiştiğinde betiği çalıştırmanız gerekiyor, ancak bu çok önemli değil.

Yorumlarda belirtildiği gibi , bunun için bir GUI de vardır .

Başka bir güzel araç SchemaCrawler .


3
Teşekkürler, komut satırı arayüzünün bir tür acı olduğunu düşündüm, elbette çalıştıktan sonra ön sayfadan GUI'ye olan bağlantıyı fark ettim, joachim-uhl.de/projekte/schemaspygui . Programın Google reklamlarını elde edilen HTML'ye eklediğine de dikkat edilmelidir.
James McMahon

1
Bu iyi. Ve işe yaraması için bol miktarda yak tıraşının yapılması gerektiğini belirtmek gerekir.
Ken Prince

Bu harika! Çalıştırmak kolaydı. Sadece talimatları izleyin. Ayrıca, sadece MySQL ve ile çalışmadığı unutulmamalıdır: DB2, Derby, Firebird, HSQLDB, Informix, MaxDB, MS SQL, Oracle, PostgreSQL, SQLite, Sbase, Teradata.
iled

Kendinizi işten kurtarın ve DbVisualizer ( kurtarın dbvis.com ) . SQLite dahil olmak üzere çeşitli veritabanlarıyla çalışır ve EULA, ücretsiz sürümün ticari projeler için kullanılmasına izin verir.
Aralox

14

Bunu yapmak için genellikle SchemaSpy kullanıyorum, ancak son zamanlarda yapı grafiğini oluşturmak için sadece döküm dosyasını kullanan sqlfairy hakkında gerçekten basit bir makale buldum


2
Sqlfairy için +1 JRE gerektirmez (diğer cevapların çoğu gibi).
mikewaters

Ben sadece sqlfairy gelen ihtiyacım var. Basit ve hızlı.
fivedogit

sqlfairy büyük veritabanları için büyük miktarda disk alanı kullanabilir. 615mb büyüklüğünde bir veritabanı için çalıştırdım ve sabit diskimde serbest kalan 18gb'yi doldurduktan sonra bozuldu.
Pascal

Bu eski bir yorum ... Bu araçlar hala geliştirilme aşamasında mı?
Hons

11

Ben sadece DbSchema denilen bu aracı seviyorum . Java ile yazılmıştır, böylece OS X, Windows veya Linux üzerinde çalışır. Özellikle baskı söz konusu olduğunda biraz hantal, ama deneyimlerime göre hepsi böyle. Bu denedim birkaç en iyisidir. Güzel, net diyagramlar yapar. Ücretsiz deneme. Satın aldığınız lisans sayısına bağlı olarak yaklaşık 120 $ maliyeti.


Mükemmel bir araç. Harika özelliklerin çoğuna sahip ücretsiz bir sürüm de var (örneğin canlı db ile senkronizasyon).
wheleph

Bu harika bir araç, hatta sanal yabancı anahtarlar üretebilir, vay!
Nassim

10

Mac OS X'te Sequel Pro'yu kullanabilirsiniz


1
+1Sequel Pro kesinlikle tavsiye edilir.
Anne

6
Bu cevabın ekstra bir açıklamaya ihtiyacı olduğunu düşünüyorum: norbauer.com/rails-consulting/notes/…
fguillen

1
Teşekkürler @fguillen! Açıklamayı buraya ekleyelim (bağlantı kopmadan önce…). Sadece 4 kolay adım: 1.) graphviz'i kurun , MacPorts ( sudo port install graphviz) ve Homebrew ( brew install graphviz) 'da mevcuttur. 2.) İhracat Dot dosyası (SequelPro'da Dosya> Dışa Aktar> Graphviz Dot'a gidin ve veritabanınızı dışa aktarın) 3.) Terminali açın ve nokta dosyasını SVG'ye dönüştürün dot -Tsvg your_database.dot > your_database.svg 4.) İsteğe bağlı olarak, oluşturulan SVG'yi istediğiniz herhangi bir aracı kullanarak JPG veya PNG'ye dönüştürün (Inkscape, ImageMagick, GraphicsMagick, vb.)
Arvid



2

MySQL Workbench'te düzenleme> otomatik düzenleme işlevini denediniz mi? Tabloları manuel olarak hareket ettirmekten kurtarabilir.


2
Evet, biraz yardımcı oldu ama büyük değildi.
Mat

Denemeye değer, her zaman kendimi de ayarlıyorum - ama bazen başlayabilirim.
Brian Fisher

2

Veritabanları için DeZign sizin için ilginç olabilir. Mevcut veritabanlarını tersine çevirebilir ve değiştirebilirsiniz. Bir otomatik yerleşim işlevi vardır ve veri modelinizi veritabanıyla senkronize ederken diyagram düzeni birleştirilmez.


Otomatik düzenleme özelliğinin daha büyük veritabanları için uygun olmadığını, yalnızca büyük bir karmaşa olduğunu unutmayın. (örneğin, diyagram için alan sınırlı gibi görünüyor ve bu nedenle sağ kenarda sıkışmış çok sayıda masa var (bizim durumumuzda tek bir yerde 75 masa). Farklı düzen seçenekleriyle oynadım, ancak sonuç herhangi bir durumda iyi değil seçeneklerin.
Lonzak

2

Visio profesyonel yerleşik bir veritabanı ters mühendislik aracı bulunmaktadır. Bir ODBC sürücüsü aracılığıyla MySQL ile kullanabilmeniz gerekir. Veritabanını tersine çevirip ardından diyagramları tablolar ve görünümler panelinden sürükleyerek oluşturduğunuzda en iyi sonucu verir. Herhangi bir yabancı anahtar nesnesini sürükleyecek ve diyagrama da koyacaktır.


2

SQL :: Translator modülüne (GraphViz) dayalı kendi Perl betiğini oluşturmaya başladım. İşte ilk sonuçlar .



2

Linux için iyi ve tercihen ücretsiz bir araç için uzun süre baktım ve oldukça iyi olan bu java uygulamasını buldum (sonunda !!):

http://sqldeveloper.solyp.com/

Java olmak çapraz platformdur (Linux ile herhangi bir sorun olmadan çalıştırıyorum) ve JDBC sürücüsü alabileceğiniz herhangi bir veritabanına bağlanacaktır. ie: hemen hemen her veritabanı .

Veritabanınızı içe aktarmak ve görsel ( ERM) almak oldukça kolaydır ve veritabanı şemasının ) değerini . Otomatik düzen özelliği de iyidir, ancak otomatik olarak yapılmadığını ve nesnelerinizi şemaya aktardıktan sonra "otomatik düzen" düğmesini tıklamanız gerektiğini unutmayın.

Uygulama ayrıca oldukça iyi bir genel veritabanı yönetim / tarama aracıdır. Küçük bir örnek olarak, SQL sorgu sonuçlarının sütun genişliği otomatik olarak içeriğe sığacak şekilde boyutlandırma (pgadmin'de beni deli ediyor) gibi basit özellikler nedeniyle bazı temel geliştirme çalışmaları için pgadmin yerine kullanıyorum.


Buna katılıyorum. Linux üzerinde postgresql veritabanlarını görselleştirmek için herhangi bir GUI aracı arıyordum ve çoğu yüzlerine düz düşüyor. SQL Developer'ı kullanmaya yeni başladım ama şimdiye kadar bulduğum en iyi ücretsiz seçenek.
Adam Plumb

1
Soru şimdi kapalı olduğu için yeni bir cevap veremiyorum, ama aslında istediğiniz araç DbVisualizer ( dbvis.com ). Bu fantastik ... sorumu önerdiğimden çok daha iyi (eğer son birkaç yıldaki kullanımım herhangi bir gösterge ise).
Russ

1

DBIx :: Class ile SQL :: Translator kullanıyorum

Ben zaten benim takım zinciri DBIx :: Sınıf var ve SQL :: Tercüman ile birleştirmek bana şema birçok farklı biçimlere dönüştürmek sağlar. Çoğunlukla farklı veritabanı sunucuları için SQL komut dosyalarını başlatma (SQLite üzerinde geliştirmeyi ve üretim için Postgresql'e geçmeyi kolaylaştırır) ancak GraphViz verilerini de çıktılayabilir, bu nedenle diyagramlar oluşturmak önemsizdir.


1

ER / Studio Embarcadero tarafından , daha pahalı olanlardan biridir, ancak sunduğu hiyerarşik mod, veritabanı modellerini anlamak için açık ara en iyi moddur. Sorgu yazmayı dünyanın en kolay görevi haline getirir.

Ayrıca normalleştirme, denormalizasyon, depolama, dokümantasyon vb.İle inanılmaz.

Dezavantajı, özellikle çok platforma gittiğinizde oldukça pahalı bir araç olmasıdır.


1

MySQL veritabanlarını yönetmek için web uygulaması olan Adminer (eski adıyla phpMinAdmin) basit bir diyagram çizer.

Yazılımın kendisi phpMyAdmin ile benzerdir, ancak daha fazla özelliğe sahiptir, hafiftir ve tek bir PHP dosyasında gelir.

alternatif metin


1
Belki bu önemsiz şemalar için işe yarıyor, ama 28 tablo ile bir şema üzerinde denedim ve bana sadece tüm tabloların alfabetik sırayla tamamen dikey bir listesini verdi, ilişkileri göstermeye çalışan dikey çizgiler karışıklığıyla. Artık işe yaramaz olamazdı.
Dolph

Tam olarak, benim durumumda 40 tablo. Sürüklemek için tıklayabilirsiniz, ancak bir kez seçtikten sonra seçemezsiniz.
Ziyan Junaideen

0

Veritabanı şemasını görselleştirdiğinizde, tüm tablolarınızın, sprocs'larınızın vb. Bir metin belgesine mi başvuruyorsunuz, yoksa şemanızın ve bağımlılıklarınızın görsel sunumuna mı atıfta bulunuyorsunuz?

MySQL'den bahsettiğinizi biliyorum (ve şimdi desteklenmesi çok mümkün, ancak emin değilim), ancak RedGate'in bunu oldukça basitleştiren bir dizi aracı var. Bu SQL Doc programı tüm veritabanınızı alabilir ve bunun için tam gelişmiş veritabanı belgeleri oluşturabilirsiniz. SQL Bağımlılık İzleyicisi size tüm tablolarınızın görsel bir temsilini verebilir ve bağlantılarını gösterebilir ya da bunları ne kullandıklarını veya ne kullandıklarını göstermek için sadece belirli tablolara veya sproclara yükleyebilirsiniz.


Red Gate'in araçları SQL Server, sadece korkuyorum.
Dave R.

Ben tam bir veritabanı doc yerine görsel bir grafik sunum sonra, ama yine de ilginç geliyor (sadece SQL Server olsa bile - bunu kullanarak başka şeyler var).
Mat

0

Yıllar önce Data Architect kullanıyordum. Hala dışarıda olup olmadığını bilmiyorum.

Varolan bir şemayı ilişkisel tablo diyagramına tersine çevirebilirsiniz.

Ya da daha ileri gidebilir ve eşlik eden bir diyagramla bir Varlık-İlişki modelini tersine mühendislik yapabilirsiniz. ER diyagramları, verileri ne programcı ne de veritabanı uzmanı olan kişilerle tartışırken benim için gerçekten yararlı oldu.

Bazen paydaşlarla yararlı bir iletişim aracı olmadan önce ER modeli ve ER diyagramına birkaç manuel düzeltme gerekli olmuştur.



0

DBSchema'yı denedim. Güzel özellikler, ama yaklaşık 75 tablo ile bir veritabanı için çılgınca yavaş. Kullanılamaz.


0

Gerçekten güzel bir görselleştirme ve düzenleme özelliğine sahip PHPMyAdmin'i deneyin. Ben ondan exel ihracat bile eminim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.