Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blazeisclone/backup-cli
An interactive CLI for taking backups of MySQL databases and application file systems via SFTP.
https://github.com/blazeisclone/backup-cli
Last synced: 19 days ago
JSON representation
An interactive CLI for taking backups of MySQL databases and application file systems via SFTP.
- Host: GitHub
- URL: https://github.com/blazeisclone/backup-cli
- Owner: BlazeIsClone
- Created: 2023-10-16T02:53:17.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-04T01:52:04.000Z (9 months ago)
- Last Synced: 2024-10-27T20:01:59.246Z (2 months ago)
- Language: Rust
- Homepage:
- Size: 33.2 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Backup CLI
Straightforward command line interface for downloading backup snapshots of MySQL Databases and Application File Systems written in Rust Programming Language.## Overview
### Design
The "Backup CLI" aims to bridge compatibility issues that stem from connecting clients and servers. This project was inspired by a philosophical concern, MySQL clients often face limited support when interfacing with remote MySQL servers that are on different versions. To combat this all the backup tasks are executed using native Unix commands, with backup files transported via SFTP.### Host Client Requirements
SSH private key should be present within the default directory `/home/{user}/.ssh`.### Remote Server Requirements
The client's openssh public key should be authorized by the user. Zip package should be installed for archiving files before transporting via network.## Installation & Usage (Unix-based Systems)
Download one of the pre-built binaries found in https://github.com/BlazeIsClone/backup-cli/releases/
Move the binary to /usr/local/bin (Unix-based Systems):
```bash
sudo mv backup-cli /usr/local/bin/
```
Make the binary executable:
```bash
sudo chmod +x /usr/local/bin/backup-cli
```Verify installation & usage:
```bash
backup-cli
```## Building From Source
In case you want to compile this yourself, you need to install at minimum the following dependencies:
* Rust stable and Cargo
* Make, CMake and a C compilerDownload the source code:
```bash
git clone https://github.com/BlazeIsClone/backup-cli.git
```Build (change working directory to `/path/to/backup-cli`):
```bash
cargo build --release
```The compiled output should be inside `/path/to/backup-cli/target/release`.