Quick Start
ElmoDB provisions managed PostgreSQL and MySQL databases in seconds. Each database runs in an isolated Docker container behind an authenticated proxy — no infrastructure to manage on your end.
- Go to My Databases and click + New Database.
- Choose an engine (PostgreSQL or MySQL) and give your database a name.
- Your database will be ready in under a minute. Copy the credentials — the password is shown only once.
- Connect using any standard client.
Your Credentials
After creation you'll see something like this:
Engine: PostgreSQL 16 Host: 100.54.192.201 Port: 6432 Database: myapp_db Username: myapp_db Password: a8f3k2p9...
Connection strings are shown in the dashboard for psql, mysql, Python, JavaScript, and Go. Click the expand arrow next to any database to see them.
Command Line
The standard CLI tools work without any configuration changes. Copy the connection string from the dashboard and paste it directly.
PostgreSQL — psql
psql "postgresql://myapp_db:password@100.54.192.201:6432/myapp_db"
psql -h 100.54.192.201 -p 6432 -U myapp_db -d myapp_db
Install psql: brew install postgresql@16 on macOS · apt install postgresql-client on Ubuntu/Debian
MySQL — mysql CLI
mysql "mysql://myapp_db:password@100.54.192.201:3306/myapp_db"
mysql -h 100.54.192.201 -P 3306 -u myapp_db -p myapp_db
Install mysql client: brew install mysql-client on macOS · apt install mysql-client on Ubuntu/Debian
GUI Clients
Any GUI database client that supports PostgreSQL or MySQL will work with ElmoDB. Enter your host, port, database name, username, and password — no SSH tunneling or special settings required.
Connecting From Code
Use any standard PostgreSQL or MySQL driver. The examples below use the connection details from your dashboard — substitute your actual host, database name, and password.
PostgreSQL
# pip install psycopg2-binary import psycopg2 conn = psycopg2.connect( host="100.54.192.201", port=6432, dbname="myapp_db", user="myapp_db", password="your_password", ) with conn.cursor() as cur: cur.execute("SELECT version();") print(cur.fetchone()[0]) conn.close()
Also works with psycopg3 and SQLAlchemy (postgresql+psycopg2://user:pass@host:6432/db).
// npm install pg const { Client } = require('pg'); const client = new Client({ host: '100.54.192.201', port: 6432, database: 'myapp_db', user: 'myapp_db', password: 'your_password', }); await client.connect(); const res = await client.query('SELECT NOW()'); console.log(res.rows[0]); await client.end();
Works with pg, Knex.js, Prisma, and Drizzle ORM.
// go get github.com/jackc/pgx/v5 package main import ( "context" "fmt" "github.com/jackc/pgx/v5" ) func main() { dsn := "postgresql://myapp_db:your_password@100.54.192.201:6432/myapp_db" conn, err := pgx.Connect(context.Background(), dsn) if err != nil { panic(err) } defer conn.Close(context.Background()) var greeting string conn.QueryRow(context.Background(), "SELECT 'hello from ElmoDB'").Scan(&greeting) fmt.Println(greeting) }
Also works with the standard database/sql interface via lib/pq or pgx stdlib adapter.
MySQL
# pip install mysql-connector-python import mysql.connector conn = mysql.connector.connect( host="100.54.192.201", port=3306, database="myapp_db", user="myapp_db", password="your_password", ) cursor = conn.cursor() cursor.execute("SELECT VERSION()") print(cursor.fetchone()[0]) conn.close()
Also works with PyMySQL and SQLAlchemy (mysql+pymysql://user:pass@host:3306/db).
// npm install mysql2 const mysql = require('mysql2/promise'); const conn = await mysql.createConnection({ host: '100.54.192.201', port: 3306, database: 'myapp_db', user: 'myapp_db', password: 'your_password', }); const [rows] = await conn.execute('SELECT NOW() AS now'); console.log(rows[0].now); await conn.end();
// go get github.com/go-sql-driver/mysql package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) func main() { dsn := "myapp_db:your_password@tcp(100.54.192.201:3306)/myapp_db" db, err := sql.Open("mysql", dsn) if err != nil { panic(err) } defer db.Close() var version string db.QueryRow("SELECT VERSION()").Scan(&version) fmt.Println(version) }
PostgreSQL 16 Reference
ElmoDB runs PostgreSQL 16. The official documentation covers everything from SQL syntax to extensions and replication.
MySQL 8.0 Reference
ElmoDB runs MySQL 8.0. The official reference manual covers the full SQL dialect, storage engines, JSON support, and client libraries.