๐ SYNCED! Easy local Supabase Workflow
Table of Contents
Introduction
This tutorial provides a clear guide on syncing Supabase instances using Supabase Migrations and CLI tools. By following these steps, you can easily manage local workflows without the hassle of manual backups and imports, making your development process more efficient.
Step 1: Set Up Your Supabase Environment
-
Create Supabase Instances: Ensure you have multiple Supabase instances ready for synchronization. You can create them through the Supabase dashboard.
-
Install Supabase CLI: If you haven't already, install the Supabase CLI by running the following command in your terminal:
npm install -g supabase
-
Initialize Supabase Project: Navigate to your project directory and initialize a Supabase project:
supabase init
Step 2: Configure Supabase Migrations
-
Create Migration Files: Use the CLI to create migration files that will record your database schema changes. Run:
supabase migration new <migration_name>
-
Edit Migration Files: Open the newly created migration file in your preferred text editor. Add the necessary SQL commands to define your database changes.
Step 3: Apply Migrations to Your Instances
-
Deploy Migrations: To apply the migrations to your Supabase instance, use the following command:
supabase db push
This command will update your database schema based on the defined migrations.
-
Verify Changes: After deploying, check your Supabase dashboard to ensure that the changes have been successfully applied.
Step 4: Syncing Between Instances
-
Export Migrations: To sync a migration from one instance to another, export your migrations using:
supabase db dump
This command creates a dump of your current database state.
-
Import Migrations: Move the dump file to the target Supabase instance and import it using:
supabase db restore <dump_file>
Step 5: Automate Synchronization (Optional)
-
Set Up Scripts: You can create scripts to automate the migration process. This can save time and reduce manual errors.
-
Example Script: Here's a basic Bash script to automate pushing and pulling migrations:
#!/bin/bash supabase db push supabase db dump
Conclusion
By following these steps, you can efficiently sync Supabase instances using migrations and the Supabase CLI. This streamlined process not only saves time but also minimizes the risk of manual errors. For further improvements, consider setting up automation scripts to handle your migrations seamlessly. Happy coding!