Database Instances
Creating and managing database instances in Springtail.
Overview
In Springtail, each database instance is associated with an account. To view and manage your instances, select the correct account from the dropdown in the left navigation menu, then click Databases.
On Databases Instances page, you’ll see a list of your existing instances, along with an option to create a new one. Actions for each instance, such as starting or stopping, can be performed by clicking the ellipsis dropdown on the right side of each instance.
Instance status
Springtail instances progress through the following states:
-
Configuring: The instance is being set up.
-
Copying: The instance is gathering a snapshot of your primary database.
-
Active: The instance is live and ready to handle queries.
Creating a new database instance
Each Springtail instance is connected to a single PostgreSQL database.
To create a new Springtail database instance, begin by clicking Add instance to launch a step-by-step guide through the setup process.
Provide primary database details
Enter the necessary details to prepare Springtail for VPC peering with your primary database. Click the ? icon for additional information on each field.
Perform AWS actions
In this step, you will construct a VPC peering policy within your AWS account, allowing Springtail to peer with your VPC.
Accept the VPC peering request from Springtail to establish access to your primary database via VPC peering.
Provide database details
Specify which databases (and optionally, which schemas and tables) should be replicated. Provide a username and password for Springtail to access the replication stream of your primary database.
See Configuring PostgreSQL to learn about creating a user that allows Springtail to access the replication stream of your primary database.
-
If you grant
SUPERUSER
access, Springtail will automatically create the necessary publications, replication slots, and triggers. WithoutSUPERUSER
access, Springtail will generate a script in the next step for you to run manually. -
If you prefer not to grant
SUPERUSER
access, you must provide a user withCONNECT
access to each replicated database andSELECT
access to all tables you want replicated within those databases.
Configure database replication (optional)
If SUPERUSER
access was provided, this step will be skipped, as Springtail handles the replication setup.
Otherwise, you’ll download a script to set up the replication manually, which must be run by a SUPERUSER
of your database.
Launch your instance
Click the Launch button to start your instance. The instance will enter the Copying
state while it captures a complete snapshot of the tables being replicated.
Removing an instance
Before proceeding, please ensure that there are no active users of the Springtail replica, as that may cause applications or processes to receive errors when the instance is stopped and removed.
To remove an instance:
-
Stop the instance - This halts all replication activity. Once the instance is stopped, you can proceed with removal.
-
Remove the instance - This will delete all associated data and resources.
-
If the instance’s user has
SUPERUSER
access, Springtail will also remove the associated publications, replication slots, and triggers. -
Without
SUPERUSER
access, you’ll be prompted to download a script for manual cleanup.
-
-
Disassociate the VPC - After the instance is terminated, you’ll receive instructions on how to disassociate the Springtail VPC from your primary database’s VPC.