← Documentation

Getting Started

A project in DBShifts is a source, a target, and everything learned about the pair — the schema analysis, the migration runs, the validation results. Creating one costs nothing and does not touch either database beyond a connection test, so it is safe to set up against production and decide later what to run.

Before you start

  • Network access from DBShifts to both databases — a private database needs the SSH tunnel option rather than a public port.
  • A source user with read access to the tables and to the schema catalog.
  • A target user that can create tables, or a target schema created for you in advance.

Steps

  1. 1

    Create a new project from the sidebar

  2. 2

    Enter your source database connection details (host, port, username, password, database name)

  3. 3

    Enter your target database connection details

  4. 4

    Use the 'Test Connection' button to verify connectivity

  5. 5

    Click 'Create Project' to begin

What goes wrong

Read-only source credentials are the right default

Analysis and migration only ever read from the source. Giving DBShifts a read-only user removes a whole category of accident, and nothing in the migration path needs more than that.

'Connection refused' is usually the bind address, not the password

A database listening on 127.0.0.1 will refuse anything from outside the host regardless of credentials. Check the bind address and the firewall before you touch the user.

Connection passwords are encrypted at rest

Stored credentials are encrypted, and are redacted from every API response — a project fetched back over the API never contains the password you typed.

Next