mysqldump を pv で制限

mysqldump 動いてる時間に同サーバで GNU social とか Nextcloud とかの mysql を利用しているアプリケーションが重くて使い物にならないです．nice + ionice は指定していますが効いてない感じ．
dump した sql を圧縮している xz コマンドが cpu を1 core 使い潰しているようです．このマシンは2 core あるのですが，もう1つの core もその他の処理でほぼ使い切って待ちが出ているような感じ．

$ vmstat 1 10
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 328212 264788 212260 5628192 1 2 35 160 2 15 35 9 44 12 0
1 1 328212 259136 212264 5628192 0 0 0 191 1497 3132 63 6 19 12 0
1 1 328212 252492 212264 5628192 0 0 0 88 959 1716 81 6 7 6 0
2 1 328212 248264 212264 5628196 0 0 0 114 973 1887 85 3 7 5 0
2 0 328212 242572 212264 5628196 0 0 0 85 972 1967 74 5 15 5 0
4 0 328212 241664 212100 5624380 0 0 0 97 1106 4226 91 7 2 2 0
2 1 328212 234268 212100 5624384 0 0 0 140 1013 1815 70 5 19 7 0
3 0 328212 235760 211944 5620076 0 0 0 2461 1289 4063 94 4 1 0 0
1 0 328212 229656 211944 5620080 0 0 0 110 953 1685 61 6 18 15 0
1 0 328212 224616 211952 5620072 0 0 0 151 983 1683 84 2 8 6 0

pv -L で帯域絞ってみました．
cpu の様子を見ながらだんだん絞っていって 128k 迄絞ってやっと xz の cpu 25〜40% 位になりました．この状態だと普通に使える感じです．
しばらくこれで試してみます．

pv で帯域制限

$ time sh -c "nice -n 19 ionice -c 3 mysqldump --defaults-file=/backup/micro/.my-backup.cnf --single-transaction --quick
--all-databases --events | pv -L 128k 2>/dev/null | nice -n 19 ionice -c 3 xz -9 > /dev/null"

real 127m16.113s
user 34m30.508s
sys 0m23.428s

cronでの実行

$ sudo -u backup crontab -l | grep mysqldump
14 3 * * * umask 0266 && nice -n 19 ionice -c 3 /usr/bin/mysqldump --defaults-file=/mnt/backup/micro/.my-backup.cnf --single-transaction --quick --all-databases --events | pv -L 128k 2>/dev/null | nice -n 19 ionice -c 3 /usr/bin/xz -9 > /mnt/backup/micro/`date +\%F_\%T_$$`.sql.xz

環境

$ dpkg-query -W mysql-client-5.7 pv xz-utils
mysql-client-5.7 5.7.23-0ubuntu0.16.04.1
pv 1.6.0-1
xz-utils 5.1.1alpha+20120614-2ubuntu2
$ lsb_release -d
Description: Ubuntu 16.04.5 LTS
$ uname -m
x86_64
$ grep -m1 model\ name /proc/cpuinfo
model name : AMD Athlon(tm) II Neo N36L Dual-Core Processor