Prerequisites
Connect Heroku Postgres to VexiData
Get your Heroku Postgres credentials
- Log in to your Heroku Dashboard
- Select the app with the Postgres add-on
- Go to the Resources tab
- Click on the Heroku Postgres add-on to open its dashboard
- Go to Settings > Database Credentials > View Credentials
- Copy the individual connection parameters:
| Parameter | Example |
|---|---|
| Host | ec2-12-34-567-890.compute-1.amazonaws.com |
| Port | 5432 |
| Database | d1abc2defgh3ij |
| Username | abcdefghijklmn |
| Password | Your database password |
Add the connection in VexiData
- Go to Data Sources in VexiData
- Click PostgreSQL to open the connection form
- Fill in the details:
| Field | Value |
|---|---|
| Display Name | A name to identify this connection (e.g., “Heroku Production”) |
| Host | Your EC2 hostname (e.g., ec2-12-34-567-890.compute-1.amazonaws.com) |
| Port | 5432 |
| Database | Your database name (e.g., d1abc2defgh3ij) |
| Schema | public (default — change if your tables are in a different schema) |
| Username | Your database username |
| Password | Your database password |
Credential rotation
Heroku automatically rotates database credentials during maintenance events, hardware failures, and security incidents. When this happens, your host, username, and password may all change.If your VexiData connection stops working unexpectedly, check your Heroku Postgres credentials and update them in VexiData.
- Get the new credentials from Heroku (see Step 1 above)
- Go to Data Sources in VexiData
- Click the edit button on your Heroku connection
- Update the host, username, and password with the new values
- Click Update Connection
Troubleshooting
Connection suddenly stopped working
Connection suddenly stopped working
- This is most likely caused by credential rotation. Heroku rotates credentials during maintenance and security events. Get your new credentials from the Heroku Postgres dashboard and update them in VexiData
- Check that your Heroku Postgres add-on is still active and not deprovisioned
Connection timed out
Connection timed out
- Verify that your Heroku app and Postgres add-on are running (not in maintenance mode)
- Heroku Postgres is hosted on AWS — occasional connectivity issues may occur during AWS infrastructure maintenance
Authentication failed
Authentication failed
- Heroku credentials change over time. Always get the latest credentials from the Heroku Postgres dashboard, not from old notes or saved passwords
- Make sure you’re copying from Database Credentials in the Postgres add-on dashboard, not from old config vars
No tables visible after connecting
No tables visible after connecting
- Confirm your tables are in the
publicschema. If they’re in a custom schema, update the Schema field in VexiData - Heroku Postgres uses auto-generated database names (e.g.,
d1abc2defgh3ij). Make sure you copied the correct one
Connect JawsDB Maria (MariaDB) to VexiData
Heroku supports MariaDB through the JawsDB Maria add-on — a fully managed MariaDB database service with automatic failover and geographic replication.Install the JawsDB Maria add-on
If you haven’t already added JawsDB Maria to your app:
- Go to your app’s Resources tab in the Heroku Dashboard
- Search for JawsDB Maria in the Add-ons section
- Select a plan and click Submit Order Form
Get your connection credentials
- Go to your app’s Settings > Config Vars
- Find the
JAWSDB_MARIA_URLvariable - The format is:
mysql://username:password@hostname:3306/database_name - Parse the individual parameters:
| Parameter | Example |
|---|---|
| Host | abc123xyz.mshared.amazonaws.com |
| Port | 3306 |
| Database | default_schema |
| Username | u1a2b3c4d5e6f7g |
| Password | Your database password |
Add the connection in VexiData
- Go to Data Sources in VexiData
- Click MariaDB to open the connection form
- Fill in the details:
| Field | Value |
|---|---|
| Display Name | A name to identify this connection (e.g., “Heroku MariaDB”) |
| Host | Your JawsDB hostname (e.g., abc123xyz.mshared.amazonaws.com) |
| Port | 3306 |
| Database | Your database name |
| Username | Your JawsDB username |
| Password | Your JawsDB password |
JawsDB Maria troubleshooting
Query limit exceeded
Query limit exceeded
JawsDB shared plans have hourly query limits (e.g., 3,600 queries/hour on the free Kitefin plan). If you hit this limit, queries will be temporarily blocked. Consider upgrading to a higher plan for more capacity.
Storage limit reached
Storage limit reached
If your database exceeds the plan’s storage limit, INSERT privileges are revoked. You’ll need to delete data or upgrade your plan to restore write access. VexiData only reads data, so existing queries will still work.
Connection failed after add-on creation
Connection failed after add-on creation
JawsDB Maria takes a few minutes to provision after installation. If the
JAWSDB_MARIA_URL config var contains a placeholder or the connection fails immediately after creation, wait a few minutes and try again.