Documentation

Amazon Redshift

Connect TableR to Amazon Redshift, a PostgreSQL-compatible cloud data warehouse. The fields, connection strings, and SSL/TLS work like PostgreSQL.

Amazon Redshift is AWS's PostgreSQL-compatible cloud data warehouse, so TableR connects to it exactly like PostgreSQL. Fill the connection form to point at your cluster endpoint.

Overview

Because Redshift is PostgreSQL-compatible, the same connection fields and connection strings as PostgreSQL apply. You connect to the cluster endpoint over the network — there is no local Redshift.

  • Cluster endpoint — use cluster.region.redshift.amazonaws.com on port 5439.
  • SSL/TLS — enable it; Redshift connections travel over the network.
  • PostgreSQL-compatible — fields, connection strings, and behaviour match PostgreSQL; see the PostgreSQL guide for anything not covered here.

Before you start

  • Your Redshift cluster endpoint (host and port).
  • A database user name — this is required.
  • The user's password, if required.
  • Optionally, the specific database to open on connect.
  • Network access to the cluster (security group / VPC) and SSL/TLS enabled.

Connection fields

These defaults match TableR's Amazon Redshift connection form, which mirrors PostgreSQL. Secrets are written to the operating system keyring, never to plain configuration files.

FieldRequiredDefaultNotes
HostYesYour cluster endpoint, e.g. cluster.region.redshift.amazonaws.com.
PortYes5439Redshift's default port. Change it only if your cluster listens elsewhere.
UsernameYesThe database user used to authenticate.
PasswordNoOptional; stored in the OS keyring.
DatabaseNoOptional. When empty, the user's default database is used.
SSL/TLSNoOffEnable it — Redshift traffic crosses the network.

Connect with the form

  1. 1
    Choose Amazon Redshift

    Open the launcher and pick the Amazon Redshift card.

  2. 2
    Enter the endpoint and port

    Use your cluster endpoint (cluster.region.redshift.amazonaws.com) and 5439.

  3. 3
    Add credentials

    Type the username, and the password if required. The password is saved to the OS keyring.

  4. 4
    Pick a database (optional)

    Set a database to open it directly, or leave it blank to use the user's default.

  5. 5
    Enable SSL/TLS

    Turn on SSL/TLS — Redshift connections travel over the network.

  6. 6
    Save and connect

    Save the profile so it reappears in the launcher, then connect.

Use a connection string

Because Redshift is PostgreSQL-compatible, you can paste a PostgreSQL connection URI. Both postgres:// and postgresql:// schemes are accepted.

postgresql://username:password@cluster.region.redshift.amazonaws.com:5439/database?sslmode=require
  • Omit the password from the URI and let TableR store it in the keyring instead.
  • Append sslmode=require (or verify-full) — Redshift connections cross the network.
  • URL-encode special characters in the password (for example @ becomes %40).

SSL/TLS

Redshift is always reached over the network, so enable SSL/TLS. If you connect with a URI, control the behaviour with the sslmode parameter.

  • require — encrypt, but do not verify the server certificate.
  • verify-ca / verify-full — encrypt and verify the certificate (most secure).
  • Leave SSL/TLS on for every Redshift connection.

Verify the connection

Once connected, open a SQL tab and run a quick check:

SELECT version();
SELECT current_database(), current_user;

If both statements return rows, the connection and credentials are working.

Troubleshooting

SymptomLikely causeFix
Connection timed outThe security group or VPC does not allow access, or the endpoint/port is wrong.Allow your IP in the cluster's security group and re-check the endpoint and port 5439.
password authentication failedWrong username or password.Re-check the credentials and update the saved password (it lives in the keyring).
SSL / encryption requiredThe cluster requires TLS.Enable SSL/TLS, or add sslmode=require to the connection string.
database 'name' does not existThe Database field names a database that is missing.Leave Database empty, or enter one that exists.

Next steps