Skip to main content
Replibyte logoReplibyte logo

Replibyte is a blazingly fast tool to seed your databases with your production data while keeping sensitive data safe ⚡️

License: MIT stability badge build and tests badge discord server

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

Demo

What is RepliByte

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!