Skip to main content

Prerequisites

Understanding DigitalOcean connection modes

DigitalOcean managed databases provide two connection modes:
Connection PoolDirect Connection
Port2506125060
Best forShort-lived, on-demand connectionsPersistent, long-running connections
HostSame host, different portSame host, different port
SSLRequiredRequired
For VexiData, we recommend using a Connection Pool. VexiData connects on-demand when running queries, so a pool provides better performance and avoids hitting connection limits on your database.

Connect DigitalOcean to VexiData

1

Get your DigitalOcean connection details

  1. Log in to your DigitalOcean Cloud Console
  2. Go to Databases from the left sidebar
  3. Select the database cluster you want to connect
  4. On the cluster’s Overview tab, find the Connection Details panel
If using a Connection Pool (recommended):
  1. Go to the Connection Pools tab
  2. If you don’t have a pool yet, click Create Connection Pool — choose a name, select the database, set the mode to Transaction, and pick a pool size
  3. Once created, click the pool name to view its connection details
Copy the following values:
ParameterDirect Connection ExampleConnection Pool Example
Hostdb-postgresql-nyc1-12345-do-user-123456-0.g.db.ondigitalocean.comSame as direct
Port2506025061
DatabasedefaultdbYour pool name
Usernamedoadmindoadmin
PasswordYour database passwordSame as direct
You can toggle between Connection parameters and Connection string views in the Connection Details panel. Use Connection parameters for easier copying.
2

Add VexiData to Trusted Sources

DigitalOcean managed databases restrict access by default using Trusted Sources. You must add VexiData’s IP addresses to allow connections:
  • 139.59.53.167
  • 165.22.217.42
To add them:
  1. Go to your database cluster’s Settings tab
  2. Under Trusted Sources, click Edit
  3. Add each IP address
  4. Click Save
Unlike Supabase and Neon, DigitalOcean enables Trusted Sources by default. Your connection will fail if you skip this step.
3

Add the connection in VexiData

  1. Go to Data Sources in VexiData
  2. Click PostgreSQL to open the connection form
  3. Fill in the details:
FieldValue
Display NameA name to identify this connection (e.g., “DO Production”)
HostYour cluster’s hostname (e.g., db-postgresql-nyc1-12345-do-user-123456-0.g.db.ondigitalocean.com)
Port25061 (pool) or 25060 (direct)
Databasedefaultdb or your connection pool name
Schemapublic (default — change if your tables are in a different schema)
Usernamedoadmin (or your database user)
PasswordYour database password
4

Test and save

Click Test & Save Connection. VexiData will verify it can reach your database. Once connected, your schema will be analyzed automatically.

Using a dedicated database user

DigitalOcean creates a default doadmin user with full admin privileges. For better security, consider creating a read-only user for VexiData:
  1. Go to your database cluster’s Users & Databases tab
  2. Click Add User to create a new user
  3. Grant SELECT permissions on the tables you want to query
  4. Use this user’s credentials when connecting in VexiData

Troubleshooting

  • This is most commonly caused by missing Trusted Sources. Verify that VexiData’s IP addresses (139.59.53.167 and 165.22.217.42) are listed in your cluster’s Settings > Trusted Sources
  • Check that you’re using the correct port — 25060 for direct connections, 25061 for connection pools
  • DigitalOcean uses non-standard ports. Make sure you didn’t enter the default PostgreSQL port 5432
  • Double-check your username and password from the DigitalOcean Connection Details panel
  • If using a connection pool, make sure the Database field contains the pool name, not the underlying database name
  • You can reset your user password from the Users & Databases tab
  • If you connected through a Connection Pool, make sure the pool was created against the correct database
  • Confirm your tables are in the public schema. If they’re in a custom schema, update the Schema field in VexiData
  • Check that your database user has SELECT permissions on the tables
  • DigitalOcean requires SSL for all connections. VexiData handles this automatically, but if you see SSL-related errors, ensure you’re connecting to the correct host and port
  • Verify the cluster is in a Running state in the DigitalOcean console