Skip to content

lichuang/replited

Folders and files

NameName
Last commit message
Last commit date

Latest commit

55fa0d3 · Nov 5, 2024
Oct 13, 2024
Oct 13, 2024
Oct 13, 2024
Oct 15, 2024
Oct 13, 2024
Oct 15, 2024
Oct 15, 2024
Oct 15, 2024
Nov 5, 2024
Sep 18, 2024
Oct 13, 2024
Sep 20, 2024
Oct 15, 2024
Oct 27, 2024
Jun 29, 2024

Repository files navigation

replited(Replicate SQLITE Daemon)

GitHub stars GitHub forks

Introduction

Inspired by Litestream, with the power of Rust and OpenDAL, replited target to replicate sqlite to everywhere(file system,s3,ftp,google drive,dropbox,etc).

Why replited

  • Using sqlite's WAL mechanism, instead of backing up full data every time, do incremental backup of data to reduce the amount of synchronised data;
  • Support for multiple types of storage backends,such as s3,gcs,ftp,local file system,etc.

Support Backend

Type Services
Standard Storage Protocols ftpCI
Object Storage Services azblob gcs
s3CI
File Storage Services fsCI

Quick Start

Start a daemon to replicate sqlite:

replited --config {config file} replicate 

Restore sqlite from backend:

replited --config {config file} restore --db {db in config file} --output {output sqlite db file path}

Config

See config.md

Sub commands

Replicate

repicate sub command will run a background process to replicate db to replicates in config periodically, example:

replited  --config ./etc/sample.toml  replicate

Restore

restore sub command will restore db from replicates in config, example:

replited  --config ./etc/sample.toml restore --db /Users/codedump/local/sqlite/test.db --output ./test.db

command options:

  • db: which db will be restore from config
  • output: which path will restored db saved

Stargazers over time

Stargazers over time