An entity-relationship model (ERM) is a theoretical and conceptual way of showing data relationships in software development. ERM is a database modeling technique that generates an abstract diagram or visual representation of a system’s data that can be helpful in designing a relational database.
I'm looking for a tool that generates DB diagrams.
- Free (open source maybe)
- Works in Linux (cross-platform maybe)
- Supports PostgreSQL/MySQL
6 Answers
draw.io is free and open source (I work on the project). It does work on Linux and has a generic SQL import, under Arrange->Insert->SQL.
You can save either locally, or directly to Google Drive, OneDrive or Dropbox. There's also a Desktop version available.
I work on the project.
DavidDavidMySQL Workbench is a good tool for working with its namesake that does ERD modeling. I've used it on both Windows and Ubuntu.
orangepipsorangepipsExtended Er Model

If you are looking for an entity relationship model (not relational model) you have to try Dia http://dia-installer.de/
This software works on linux/windows/mac. And have a branch on git.
The entity relationship model has the purpose of make a model of the problem and let you understand the problem, so in the end you can generate a good relational model to have the most efficient model for you database.
This software is not intended to generate mysql tables directly but it has a plugin to convert Dia diagrams to sql, you can check it out in the same link.

You might want to try PowerArchitect
It's Java based (therefor cross-platform) and I have used it successfully with PostgreSQL
If you do want to spent some money (albeit not much), have a look at DbWrench which offers more features than PowerArchitect
Another open source/cross-platform option is Mogwai ERDesigner. Although there is one thing that I really don't like about it: if requires a connection to a database (to validate/define datatypes) which I find a very limiting requirement.
P̲̳x͓L̳I use Software Ideas Modeler for entity relationship diagrams. It could meet your requirements - it's not open source but it has a free version, it works in Linux via Mono and it supports MySQL.
If you are looking for some software to auto generate ER diagram from existing database then you will love this tool: http://schemaspy.org/
KrunalKrunalNot the answer you're looking for? Browse other questions tagged database or ask your own question.
Entity Relationship Diagram
An entity relationship diagram, also called entity relationship model, is a graphical representation of entities and their relationships to each other, typically used in computing in regard to the organization of data within databases or information systems.
Er Model Tool
An entity relationship diagram is a specialized graphic that illustrates the relationships between entities in a database. Also Known As: ER Diagram, E-R Diagram, ERD.
ER Diagram Software
ER Diagram software is an excellent communications tool, which can be used to confirm business requirements and provide direction to the architecture and design team as they move forward with physical database design rapidly.
Edraw Max is ideal for building entity relationship diagrams, Chen ERD, Express-G diagram, ORM diagram, Martin ERD and database model diagram. It's affordable and easy for illustrating the entity relationship diagrams by simply drag and drop. Then add a connector among the entity relationship shapes, style and color that you want, An additional arrow style can be attached to the connector to illustrate the relationship between the different entities.
System Requirements
Works on Windows 7, 8, 10, XP, Vista and Citrix
Works on 32 and 64 bit Windows
Compatible with Linux distributions such as Debian, Ubuntu, Fedora, etc
Tagged on: Matrix Template
Software Features
- Functionality: Automatic functions supported by drag and drop interface and point-and-click editor Reliability: Trusted by users around the world. Over 6 million downloads.
- Usability: Is to use with predefined shapes, drag-and-drop interface and ready-made templates and examples.
- Efficiency: Can generate an entity relationship diagram in less than 10 minutes. What is more, over 200 types of diagrams are supported.
- Maintainability: Offers free technology support and lifelong upgrade chance.
- Compatibility: compatible with MS programs.
Symbols of Entity Relationship Diagram
Edraw Max supports five types of entity relationship diagram. The different entity relationship diagram is using the different symbols to represent the relationships between entities in a database for most information management projects. But ER diagrams often use boxes to represent entities. Diamonds are normally used to represent relationships and ovals are used to symbolize attributes.
Entity Relationship Symbols
Entities Symbol: Entity instance-person, place, object, event, concept
Relationships Symbol: Relationship instance-link between entities
Symbols of Chen ERD
The following symbols of entity relationship diagram is based on the Chen ERD. Chen ERD uses rectangles to represent entities, and diamonds to represent relationships appropriate for first-class objects. If an entity set participates in a relationship set, they are connected with a line. Attributes are drawn as ovals and are connected with a line to exactly one entity or relationship set.
Symbols of Martin ERD
The following Martin ERD symbols is based on the symbols used in the Martin notation to draw object-oriented analysis and design diagrams.
Symbols of ORM Diagram
Object Role Modeling is commonly used to describes the database of a model for information and rules analysis, ontological analysis, and data modeling in the field of software engineering: what objects may exist, what object classes they belong to, and what relationships exist between objects.
What is the shortcut to create an entity relationship diagram?
Start to Draw an Entity Relationship Diagram
The steps involved in creating an entity relationship diagram are:
Identify the entities.
Determine all significant interactions.
Analyze the nature of the interactions.
Draw the entity relationship diagram.
When you create an entity relationship diagram, one of the first things that you should consider is the entities about which you wish to record information. For example, in a family database, you probably wish to record information about member, house, job, love, contact, etc.
However, in a relational database you record not only details about the entities but also the relationship between them. For example, in the family, members are assigned to house and every member is appointed to be in charge of each love and job.
Entities are the 'things' about which you wish to record information in a database. There are relationships between entities which fall into three types: one-one, one-many, many-many. Any many-many relationship must be resolved into two one-many relationships.
Single Entity Relationship
Binary Entity Relationship
An entity relationship diagram example, showing a simple database for the business order process.
The entity relationship diagram shown in the above image contains six entities - supplier, customer, order, item, product and shipment. There are five kinds of relationship such as supplied by, requested on, used in, included on and sent by. In our example, every entity includes some attributes associated with each entity. In a real-world example, each one of these would likely have many different attributes.