Прогресс импорта mysql базы данных

Для того, чтобы видеть прогресс импорта больших файлов в базы данных mysql необходим пакет pv (Pipe Viewer).

Установка pv на Cent OS:

[sourcecode language=»bash» light=»true»]
yum install pv
[/sourcecode]

Использование pv в связке с импортом mysql:

[sourcecode language=»bash»]
pv -i 1 -p -t -e ./file_to_import.sql | mysql -u USER_NAME -pPASSWORD DB_NAME
[/sourcecode]

Вывод информации будет такой:

[sourcecode language=»bash»]
pv -i 1 -p -t -e ./the_big_file_to_import.sql | mysql -u *** -p*** ***
0:25:38 [===> ] 8% ETA 4:20:40
[/sourcecode]

Таким образом вы видите прогресс в процентах, а также сколько прошло времени и сколько осталось до конца выполнения импорта.

Pipe Viewer также позволяет видеть практически любые процессы связанные с копированием данных, например вычисление md5 хэша или архивирование файлов:

[sourcecode language=»bash»]
$ pv kino.avi | md5sum
$ 158MB 0:00:03 [ 45MB/s] [=========================================>] 100%
7451f8ac288b3815e7b1894e9ec14f24 —
[/sourcecode]

 

[sourcecode language=»bash»]
$ tar -cf — kino.avi | pv -s $(du -sb kino.avi | awk ‘{print $1}’) | gzip > kino.tgz
58MB 0:00:15 [10,5MB/s] [==========> ] 57% ETA 0:00:14
[/sourcecode]