Replibyte is a blazingly fast tool to seed your databases with your production data while keeping sensitive data safe ⚡️
Prerequisites
- MacOSX / Linux / Windows
- Nothing more! Replibyte is stateless and does not require anything special.
Usage
Create a dump
replibyte -c conf.yaml dump create
List all dumps
replibyte -c conf.yaml dump list
type name size when compressed encrypted
PostgreSQL dump-1647706359405 154MB Yesterday at 03:00 am true true
PostgreSQL dump-1647731334517 152MB 2 days ago at 03:00 am true true
PostgreSQL dump-1647734369306 149MB 3 days ago at 03:00 am true true
Restore the latest dump in a local container
replibyte -c conf.yaml dump restore local -v latest -i postgres -p 5432
Restore the latest dump in a remote database
replibyte -c conf.yaml dump restore remote -v latest
Features
- Support data backup and restore for PostgreSQL, MySQL and MongoDB
- Replace sensitive data with fake data
- Works on large database (> 10GB)
- Database Subsetting: Scale down a production database to a more reasonable size 🔥
- Start a local database with the prod data in a single command 🔥
- On-the-fly data (de)compression (Zlib)
- On-the-fly data de/encryption (AES-256)
- Fully stateless (no server, no daemon) and lightweight binary 🍃
- Use custom transformers
Here are the features we plan to support
- Auto-detect and version database schema change
- Auto-detect sensitive fields
- Auto-clean backed up data
Getting Started
- How Replibyte works
- Initial setup:
- Step-by-step guides:
Demo
Motivation
At Qovery (the company behind Replibyte), developers can clone their applications and databases just with one click. However, the cloning process can be tedious and time-consuming, and we end up copying the information multiple times. With RepliByte, the Qovery team wants to provide a comprehensive way to seed cloud databases from one place to another.
The long-term motivation behind RepliByte is to provide a way to clone any database in real-time. This project starts small, but has big ambition!