Skip to main content

NeonDB

Overview

BemiDB requires a connection to your PostgreSQL database. The fastest way to connect is by using your NeonDB connection string. If needed, you can also create dedicated read-only credentials. BemiDB will securely connect and, after you select your tables, automatically provision an encrypted, analytics-optimized database.

Steps to Connect

Step 1: Retrieve NeonDB Connection String

  1. Navigate to your Neon Project Dashboard.
  2. In the Connection Details widget, ensure that Connection pooling is disabled.
  3. Copy the auto-generated connection string.

Step 2: Enter Connection String into BemiDB

  1. Paste the copied connection string into the BemiDB setup form.
  2. The form will automatically parse and populate fields for:
    • Host
    • Port
    • Database Name
    • Username
    • Password

Step 3: (Optional) Create a Read-Only PostgreSQL User

Instead of using the default credentials, you can create a dedicated read-only user. In the SQL Editor tab:

Create a new PostgreSQL user:

CREATE USER bemidb_user WITH PASSWORD 'your_secure_password';

Grant read-only access:

GRANT USAGE ON SCHEMA public TO bemidb_user;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO bemidb_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO bemidb_user;

Enter the newly created username and password in the BemiDB setup form.

Step 4: Select Tables

During setup, you can configure which tables to sync:

Advanced Settings

Allow Inbound Traffic

If you're using Neon's IP Allow feature (available with Neon Scale and Business plans), you need to allow inbound traffic from BemiDB. Contact us to get the static IPs that should be allowlisted. For more details, see Configure IP Allow.

SSH Tunnel

If your PostgreSQL database is not publicly accessible, you can enable an SSH tunnel through a public jump host:

After submitting the database connection settings, we'll generate a public SSH key:

To allow BemiDB to connect, add this public SSH key to your SSH host:

touch ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
echo 'ssh-ed25519 AAAAC3Nz...' >> ~/.ssh/authorized_keys

If you need a public SSH Key before knowing the SSH host address, specify any address initially and reach out to us later to update it.

VPN Tunnel

If your PostgreSQL database and SSH jump host aren't accessible over the internet, contact us to set up a secure VPN tunnel to our VPN server.