Sous Linux, vous pouvez imprimer des informations sur le descripteur de fichier (ls -l /proc//fd) et le lecteur de position de fichier (cat /proc//fdinfo). Donc :
-
Trouvez mysqld pid (dans cet exemple :1234 ):
$ ps -ef | grep mysqld
mysql 1234 1 0 feb12 ? 00:00:55 /usr/sbin/mysqld
-
Trouvez le numéro de descripteur de fichier de votre fichier chargé (dans cet exemple :45 ):
$ sudo ls -l /proc/1234/fd
lr-x------ 1 root root 64 Feb 13 10:56 45 -> /var/lib/mysql/db/Loaded_file.txt
-
Imprimer les informations sur ce descripteur de fichier et vérifier le nombre d'octets déjà lus (dans cet exemple :494927872 ):
$ cat /proc/1234/fdinfo/45
pos: 494927872
flags: 0100000
Vous pouvez comparer cet indicateur de progression (en octets) à la taille réelle du fichier en cours de chargement.
Au lieu des étapes 1 et 2, vous pouvez également utiliser la commande 'lsof' :
$ lsof /var/lib/mysql/db/Loaded_file.txt | grep mysql
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 1234 youknowwho 45r REG 252,0 190312 5505353 /var/lib/mysql/db/Loaded_file.txt