Na verdade, existem três usuários-raiz sutilmente diferentes no MySQL. (Que é uma dor real, mas tem sido assim para sempre e provavelmente não vai mudar ...)
MariaDB [(none)]> select Host, User from mysql.user where User = 'root';
+-----------+------+
| Host | User |
+-----------+------+
| 127.0.0.1 | root |
| ::1 | root |
| localhost | root |
+-----------+------+
3 rows in set (0.06 sec)
O usuário root
com host localhost
é usado somente ao conectar usando o soquete UNIX. Os outros usuários são usados ao se conectar via soquete TCP, via IPv4 ou IPv6, respectivamente.
Quando você faz o encaminhamento de porta ssh com o Navicat, o soquete TCP é usado e, especificamente, o soquete TCP do IPv6 (como IPv6 é preferível ao IPv4). Então esse usuário é aquele que está sendo autenticado.
A maioria de nós lida com isso garantindo que a senha seja definida da mesma forma para as três linhas.