Spec-Zone.ru › MySQL Enterprise Backup 4.1

4.3.1.1 Потоковая передача данных резервной копии на другое устройство или сервер

Для ограничения нагрузки на хранилище сервера базы данных вы можете передать данные резервной копии на другой сервер, не сохраняя их локально. Это можно сделать с помощью резервной копии в одном файле. Чтобы отправить резервную копию в одном файле на стандартный вывод, используйте команду mysqlbackup backup-to-image без указания параметра --backup-image. (Вы также можете указать --backup-image=-, чтобы было очевидно, что данные отправляются в stdout.) Для потоковой передачи данных вы используете резервную копию в одном файле в сочетании с функциями операционной системы, такими как каналы, ssh и т. д., которые принимают ввод со стандартного вывода и создают эквивалентный файл на удалённой системе. Вы можете либо сохранить резервную копию в одном файле непосредственно на удалённой системе, либо вызвать mysqlbackup с параметром copy-back-and-apply-log на другой стороне, чтобы восстановить резервную копию на удалённом сервере MySQL.

Пример 4.13 Резервная копия в одном файле на удалённый хост

Следующая команда осуществляет потоковую передачу резервной копии как выходного файла в один файл на удалённый хост для сохранения под именем файла my_backup.img (--backup-dir=/tmp обозначает директорию для хранения временных файлов, а не конечного выходного файла):

mysqlbackup --defaults-file=~/my_backup.cnf --backup-image=- --backup-dir=/tmp backup-to-image | \
  ssh <user name>@<remote host name> 'cat > ~/backups/my_backup.img'

Для простоты предполагается, что все параметры подключения и другие необходимые параметры указаны в файле конфигурации по умолчанию. ssh можно заменить на другой протокол связи, например, ftp, а cat можно заменить на другую команду (например, dd или tar для обычного архивирования).


Пример 4.14 Резервная копия в одном файле на удалённый сервер MySQL

Следующая команда осуществляет потоковую передачу резервной копии как одного файла резервной копии для восстановления на удалённом сервере MySQL:

mysqlbackup  --backup-dir=backup --backup-image=-  --compress backup-to-image | \
ssh <user name>@<remote host name> 'mysqlbackup --backup-dir=backup_tmp --datadir=/data \
--innodb_log_group_home_dir=. \
--innodb_log_files_in_group=<innodb_log_files_in_group_of_backedup_server> \
 --innodb_log_file_size=<innodb_log_file_size_of_backedup_server> \
--innodb_data_file_path=<innodb_data_file_path_of_backedup_server> \
--uncompress --backup-image=- copy-back-and-apply-log'

Пример 4.15 Потоковая передача каталога резервной копии на удалённый сервер MySQL

Следующая команда осуществляет потоковую передачу каталога резервной копии как одного файла резервной копии для восстановления на удалённом сервере MySQL:

mysqlbackup --backup-image=- --backup-dir=/path/to/my/backup backup-dir-to-image | \
ssh <user name>@<remote host name> 'mysqlbackup --backup-dir=backup_tmp --datadir=/data --backup-image=- copy-back-and-apply-log'

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-enterprise-backup-4.1-en/meb-backup-streaming.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API