The ERD Designer Agent
The Agent is a small program you run on your own computer. It lets ERD Designer, in your browser, read a schema from one of your databases and apply DDL to it — without your database password ever leaving your computer.
1. Why it is needed
ERD Designer runs in your browser, and our servers run on the internet. Neither can reach a database on your computer, in your office network, or inside your cloud. The ERD Designer Database Agent is an optional install that you place on your own computer — the one you use ERD Designer on — to serve database interaction.
- A web page cannot directly interact with a database, so the browser cannot connect to PostgreSQL, Oracle or SQL Server directly.
- Neither can our servers connect to your database.
The Agent closes this gap. It runs on your computer, inside your network, where your databases can be reached. It interacts with ERD Designer, in your browser, only while it is running — quit it and it stops.
The Agent connects only to the databases you add, and only services requests coming to it from ERD Designer in your own browser.
You do not need the Agent to draw diagrams, import a DDL file, or generate, copy and download DDL. It is needed only to work with a live database directly — so its use is entirely optional.
2. What it can do
- List the schemas in a database you have added to it.
- Read a schema's structure — tables, columns, keys, indexes and relationships — so ERD Designer can draw it as a diagram (Import DDL → Connected database).
- Apply DDL statements to the schema you choose, when you press Apply (Generate DDL). This requires the Pro Plan or higher, and that you granted Write Access to the database.
- Keep a log of every statement it sends to your databases.
It works with PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, SQLite, Amazon Redshift, Google BigQuery and Snowflake.
3. What it cannot do
- It makes no outbound connection to us or to anyone else. The only connections it opens are to the databases you add. It does not phone home, check for updates, or send usage data.
- It cannot be reached from another computer. It listens on this computer only (the address
127.0.0.1), so nothing on your network or the internet can call it. - It does not read the data in your tables. It reads structure only — never rows.
- It does not send database credentials to ERD Designer. The application sees a database's short name, its type and whether it is running, nothing else.
- It cannot change a database unless you allow it. Every database is added read-only. Writing is something you must enable for each database.
- It cannot do more than your database user can. Whatever permissions you enable in the Agent, the database's own permissions still apply and cannot be overridden.
- It does not run when you have quit it. It is an ordinary program and installs no background service.
4. How it keeps your database safe
Three separate checks stand between a click in the application and a change to your database. Each can refuse by itself.
- You, in the application. Nothing is applied until the exact statements are on your screen and you press Apply. What you apply is what runs.
- The Agent's own settings. They say which databases this computer may read and which it may write. The default is read-only.
- Your database's permissions. The database credentials you place in the Agent can do only what the database itself grants.
Around those checks:
- Credentials stay on your computer. They are kept in a settings file only your user account can read. You can also choose to store no password at all; the application then asks for it each time, and sends it only to the Agent on the same computer.
- Only ERD Designer's own pages can call it. The Agent refuses requests from any other website, and requests that did not start on this computer.
- Every request needs a short-lived pass. When you ask for something, ERD Designer issues a signed pass for your account, for one database and one kind of operation, valid for three minutes. The Agent checks the signature by itself, without contacting us. Another program on your computer cannot use the Agent without one.
- You can check what it did. The log lists every statement sent to your databases, with credentials removed. Open it from the Agent's menu.
Our Privacy Policy and Terms of Service say the same in their sections on the Agent.
5. Download
The Agent is free to download: an app for the Mac, and a Terminal program for Windows and Linux. Choose the build for the computer that can reach your database — usually the one you are using now.
You can also download it from inside the application: open Import DDL and choose Connected database, or press Apply to Database in the Generate DDL window.
On a Mac, the download is an installer (.pkg). Open it and follow the steps; the ERD Designer Agent app goes into your Applications folder. It is signed by ERD Designer, LLC and notarized by Apple.
On Linux, the download is a .zip. Unzip it, then run the ddl-apply program inside.
On Windows the Agent is not yet code-signed, so SmartScreen warns the first time you run it: choose More info, then Run anyway.
Or, on Linux, install it from Terminal in one step. Open Terminal and paste:
curl -fsSL https://erddesigner.com/agent/install | sh
It downloads the Agent onto your Desktop (or into ~/ERD Designer Agent where there is none) and opens it.
6. Set it up
On a Mac
- Install it. Open the downloaded installer (
.pkg) — from your Downloads folder, or your browser's list of downloads — and follow its steps. ERD Designer Agent goes into your Applications folder. - Open ERD Designer at app.erddesigner.com and sign in.
- Start the Agent from ERD Designer. Open Import DDL and choose Connected database (or press Apply to Database in the Generate DDL window), then press Open the Agent. Your browser asks once whether to open ERD Designer Agent — choose Open, and tick Always allow if it offers it. The Agent starts with just its icon in the Dock, and ERD Designer finds it in a few seconds.
- Add your database. Click the Agent's icon in the Dock to open its window, then choose ERD Designer Agent → Add a Database… in the menu at the top of the screen. It asks for a short name, the database type, the address (
host:port/database), the user, the password, and the database version if you know it. The short name is what you will see in ERD Designer. Amazon Redshift, Google BigQuery and Snowflake ask for what each needs instead: Redshift its endpoint, port, database, user, password and schema; BigQuery its service-account key file; Snowflake the account identifier and a private key file or access token. It tests the connection before saving. - To apply diagrams to it, choose Change Database Permissions… and grant Write access. (Skip this if you only want to read schemas.)
- Back in ERD Designer, press Look again. Your database appears, ready to read or apply to.
From then on, ERD Designer's Open the Agent starts it whenever it is not running; you can also open it yourself from your Applications folder. The Agent's menu also has Edit Database Credentials…, Test a Connection, View the SQL Log (every statement the Agent has sent), Change ERD Designer's Agent port…, Remove a Database… (its settings and any stored password are deleted from this computer; the database itself is not touched) and Refresh the List; its window has the same actions as buttons. Closing the window leaves the Agent running, its icon in the Dock — click the icon to bring the window back. Quit ERD Designer Agent (⌘Q) stops it.
On Windows and Linux
- Open the Agent. On Linux, unzip the download first. It opens a short menu in a terminal window and starts listening. Leave it open while you use ERD Designer.
- Choose 1, Add a database, and answer its questions, as on the Mac.
- Choose 4, Test a connection.
- Choose 3, Change a database's permissions, and grant Write Access. (Skip this if you only want to read schemas.)
Its other choices: 2 edits a database's credentials, 5 shows the SQL log, 6 changes the listening port, 7 removes a database, R refreshes the list, and Q quits, which stops the Agent.
7. Use it from ERD Designer
To draw a diagram from a live database: open Import DDL, stay on Connected database, choose the database, then the schema.
To apply a diagram to a database: open a physical diagram and press Generate DDL. Choose whether to run the full script or only the differences, choose the database and the schema, read the statements that will run, then press Apply. If anything is missing, pressing Apply tells you what happened and how to fix it.
8. If something is not working
- "No Agent answered." The Agent is not open, or it is listening on a different port. Open it, then press Look again. The Agent's menu shows its port (7317 unless you changed it); set the same number under Agent settings in the application.
- The Agent is running, but no database is listed. Add one from the Agent's menu, then press Look again.
- A database is listed but greyed out as read-only. Grant Write Access to it in the Agent (menu 3).
- A database is greyed out as the wrong type. The diagram generates DDL for one type of database and that type of database is not present in your Agent configuration/credentials. Add a database of the diagram's type, or change the diagram's target database.
- The application asks for a password. That database stores none in the Agent. Type it; it is used once and not kept.
9. Remove it
Quit the Agent. On a Mac, drag ERD Designer Agent from your Applications folder to the Trash; on Windows and Linux, delete the program file. To remove everything it kept, also delete its settings file, .ddl-apply.json, and its .erddesigner folder, both in your home folder. Nothing else is installed.
Questions
Write to support@erddesigner.com.