Я выполняю следующую команду в течение 5 часов и все еще продолжаю. mysql имеет гигабайты данных, но как я могу убедиться, что следующая команда действительно передает данные. Может кто-нибудь проверить правильность?
tar -czpf - ./ --exclude mysql mysql-bin* mysql.sock | ssh -lroot xxx.xx.xxx.xx tar -xzpf - -C /var/lib/mysql
Вы можете вставить pv
в свой конвейер, чтобы получить отчет о том, сколько байтов было передано, например:
tar -czpf - ./ --exclude mysql mysql-bin* mysql.sock |
pv |
ssh -lroot xxx.xx.xxx.xx tar -xzpf - -C /var/lib/mysql
Это даст вам такой вывод, включая общее количество байтов и текущую скорость передачи:
202MB 0:00:13 [ 17MB/s] [ <=> ]
Вы также можете просто запустить du -sh
в целевом каталоге.
Если у вас есть быстрая сеть между двумя серверами, вам следует попробовать без сжатия (-C).
Чтобы ограничить использование ЦП, вы должны изменить алгоритм шифрования по умолчанию, используемый, например, с «-c blowfish».
(вы также можете использовать ifstat или iptraf для проверки скорости обмена данными)