All Projects → KOLANICH-libs → PHP-Backuper

KOLANICH-libs / PHP-Backuper

Licence: BSD-3-Clause license
A framework which will help you to make (incremental) backups of your site.

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to PHP-Backuper

Pgbackrest
Reliable PostgreSQL Backup & Restore
Stars: ✭ 766 (+4687.5%)
Mutual labels:  backup, restore, incremental
ioBroker.backitup
Backitup enables the cyclical creation of backups of an IoBroker / Homematic installation
Stars: ✭ 43 (+168.75%)
Mutual labels:  backup, restore, webdav
Go Mydumper
A multi-threaded MySQL backup and restore tool, faster than mysqldump
Stars: ✭ 250 (+1462.5%)
Mutual labels:  backup, restore
virt-backup
Fully backup your KVM Virtual Machines
Stars: ✭ 27 (+68.75%)
Mutual labels:  backup, restore
mindav
A self-hosted file backup server which bridges WebDAV protocol with @minio written in @totoval. Webdav ❤️ Minio
Stars: ✭ 64 (+300%)
Mutual labels:  backup, webdav
System Tar And Restore
Backup and Restore your system using tar or Transfer it with rsync
Stars: ✭ 170 (+962.5%)
Mutual labels:  backup, restore
Zfsbackup Go
Backup ZFS snapshots to cloud storage such as Google, Amazon, Azure, etc. Built with the enterprise in mind.
Stars: ✭ 179 (+1018.75%)
Mutual labels:  backup, cloud-storage
proxmox toolbox
A toolbox to get the firsts configurations of Proxmox VE / BS done in no time
Stars: ✭ 158 (+887.5%)
Mutual labels:  backup, restore
Backup Manager
Database backup manager for dumping to and restoring databases from S3, Dropbox, FTP, SFTP, and Rackspace Cloud
Stars: ✭ 1,589 (+9831.25%)
Mutual labels:  backup, restore
ekstertera
Linux GUI клиент для работы с Яндекс.Диск (Yandex.Disk) через REST API
Stars: ✭ 33 (+106.25%)
Mutual labels:  backup, cloud-storage
laravel-database-manager
Make your database simple, easier and faster with vuejs.
Stars: ✭ 50 (+212.5%)
Mutual labels:  backup, restore
elcarro-oracle-operator
El Carro is a new project that offers a way to run Oracle databases in Kubernetes as a portable, open source, community driven, no vendor lock-in container orchestration system. El Carro provides a powerful declarative API for comprehensive and consistent configuration and deployment as well as for real-time operations and monitoring.
Stars: ✭ 204 (+1175%)
Mutual labels:  backup, restore
Knoxite
A data storage & backup system
Stars: ✭ 165 (+931.25%)
Mutual labels:  backup, restore
Cognito Backup Restore
AIO Tool for backing up and restoring AWS Cognito User Pools
Stars: ✭ 142 (+787.5%)
Mutual labels:  backup, restore
Pg rman
Backup and restore management tool for PostgreSQL
Stars: ✭ 197 (+1131.25%)
Mutual labels:  backup, restore
Checkpoint
Fast and simple homebrew save manager for 3DS and Switch.
Stars: ✭ 1,886 (+11687.5%)
Mutual labels:  backup, restore
IAmLazy
Easily backup and restore your tweaks
Stars: ✭ 37 (+131.25%)
Mutual labels:  backup, restore
cya
Easy to use snapshot and restore utility for any Linux (Unix) OS and filesystem powered by BASH
Stars: ✭ 73 (+356.25%)
Mutual labels:  backup, restore
Helicopterizer
Backup and Restore for Docker Container!
Stars: ✭ 112 (+600%)
Mutual labels:  backup, restore
Nextcloud Backup Restore
Moved to codeberg.org - https://codeberg.org/DecaTec/Nextcloud-Backup-Restore - Bash scripts for backup/restore of Nextcloud
Stars: ✭ 115 (+618.75%)
Mutual labels:  backup, restore

PHP Backuper {#mainpage}

This is a framework which will help you making (incremental) backups of your site, pack them to archive (every format that PHAR supports) and save it into remote or local locations, such as different cloud storages, FTP servers, e-mail, file sharing services, etc... Extremely useful for daily backup The framework is written in pure php an can be used on free hostings with supported PHP version ( 5.4+) and was designed as extensible. Feel free to fork and modify it.

Doxygen documentation

Requirements

PHP 5.4+

SQLite + its PDO driver

dBug - https://github.com/KOLANICH/dBug - for debug output

PHAR

MySQL + its PDO driver for MySQLBackuper

SabreDAV - https://github.com/KOLANICH/SabreDAV - for WebDAVUploader

DropboxUploader - https://github.com/KOLANICH/DropboxUploader - for DropboxSimpleUploader

Modules folder structure

There is a folder, where we store the modules, somewhere in the server. Let's call it 'modules' for example. Then the subtree will be such:

modules
   |
   |---Backuper_______
   |            |    |
   |           ...  Backuper.php
   |
   |---Sabre________
   |         |     |
   |         ...  Dav___
   |               |   |
   |              ...  Client.php
   |
   |---DropboxUploader______
   |                  |    |
   ...               ...  DropboxUploader.php

Backup main workflow

Look into example.php . To make backup you'll need:

  1. to create a Backuper instance
  2. to call makeBackup() method

Creating instance

	new Backuper(
		[
			'upload'=>[
				/*here should be a list of upload plugins (further uploaders)*/
			],
			'backup'=>[
				/*here should be a list of backup pluguns (further backupers)*/
			]
		]
	);

Making backup

You need to call Backuper::makeBackup method.

Look example.php for details.

Backupers

Backupers are responsible for extracting data, packing them to archive and mantaining index. Each backuper must implement IBackuper interface.

Uploaders

Uploaders are responsible for upload resulting archive to different services such as DropBox, SugarSync, Google Drive, Yandex.Disk, etc. Each uploader must implement IUploader interface.

Implemented modules (most of them ;)

  • WebDAVUploader - will help you with uploading to Yandex.Disk, Box.com, SkyDrive and other WebDAV services. Also you can use https://dav-pocket.appspot.com/ to access DropBox and http://otixo.com/ to access most of cloud storages through WebDAV.
  • DropboxSimpleUploader - will help you with uploading to DropBox using login and password.
  • FileTreeBackuper - makes incremental backup of file tree. Supports ignores. Every ignore is a regex in FileTreeBackuper_ignores.
  • MySQLBackuper - makes backup of SQL database (structure + data), but there can be problems. Also, you can possible to use it to backup bases other than MySQL, which are MySQL compatible and have PDO interface.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].