Утилита резервного копирования PHP
PHPBU — это PHP-инструмент, который создает и шифрует резервные копии, синхронизирует ваши резервные копии с другими серверами или облачными сервисами и помогает вам контролировать создание резервных копий.
Подробное описание всех функций и краткое руководство по началу работы можно найти на веб-сайте PHPBU.
Если вы еще не используете PHP 8.0 или более позднюю версию, вы все равно можете использовать phpbu версии 6.0.20.
Если вы еще не используете PHP 7.2 или более поздней версии, вы все равно можете использовать phpbu версии 5.2.10.
Если у вас PHP 7.0, вы все равно можете использовать phpbu версии 4.0.10.
Вы можете скачать PHP-архив (PHAR), который объединяет все необходимое для запуска PHPBU в одном файле.
wget https://phar.phpbu.de/phpbu.phar
chmod +x phpbu.phar
php phpbu.phar --version
Для удобства вы можете переместить PHAR в каталог, который находится в вашем PATH.
mv phpbu.phar /usr/local/bin/phpbu
phpbu --version
Использование PHIVE для установки PHPBU .
phive install phpbu
Также поддерживается установка PHPBU через Composer.
"require" : {
"phpbu/phpbu" : " ^6.0 "
}
phpbu [option]
--bootstrap=<file> A "bootstrap" PHP file that is included before the backup.
--configuration=<file> A phpbu xml config file.
--colors Use colors in output.
--debug Display debugging information during backup generation.
--generate-configuration Create a new configuration skeleton.
--limit=<subset> Limit backup execution to a subset.
--simulate Perform a trial run with no changes made.
--restore Print a restore guide.
-h, --help Print this usage information.
-v, --verbose Output more verbose information.
-V, --version Output version information and exit.
$ phpbu
Для этого требуется действительный файл конфигурации XML PHPBU (phpbu.xml или phpbu.xml.dist) в вашем текущем рабочем каталоге. Альтернативно вы можете указать путь к файлу конфигурации. Важно отметить, что все пути внутри конфигурации должны быть абсолютными или относительными к самому файлу конфигурации.
$ phpbu --configuration=backup/config.xml
Используйте опцию --limit , чтобы выполнить только часть настроенных вами резервных копий.
$ phpbu --limit=myAppDB
Пробный прогон без какого-либо реального воздействия выполняется с помощью опции --simulate .
$ phpbu --simulate
Чтобы показать руководство по восстановлению резервной копии, используйте опцию --restore .
$ phpbu --restore
Простой пример конфигурации в XML:
<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< phpbu xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance "
xsi : noNamespaceSchemaLocation = " http://schema.phpbu.de/6.0/phpbu.xsd "
verbose = " true " >
< backups >
< backup name = " myAppDB " >
<!-- source -->
< source type = " mysqldump " >
< option name = " databases " value = " mydbname " />
< option name = " user " value = " user.name " />
< option name = " password " value = " topsecret " />
</ source >
<!-- where should the backup be stored -->
< target dirname = " backup/mysql "
filename = " mysqldump-%Y%m%d-%H%i.sql "
compress = " bzip2 " />
</ backup >
</ backups >
</ phpbu >
Простой пример конфигурации в JSON:
{
"verbose" : true ,
"backups" :[
{
"name" : " myAppDB " ,
"source" :{
"type" : " mysqldump " ,
"options" :{
"databases" : " mydbname " ,
"user" : " user.name " ,
"password" : " topsecret "
}
},
"target" :{
"dirname" : " backup " ,
"filename" : " mysql-%Y%m%d-%H%i.sql " ,
"compress" : " bzip2 "
}
}
]
}