Há três entradas porque você precisa de uma entrada para cada combinação user@host .
Examine host para cada uma das entradas de usuário root . A coluna host define de onde esse usuário pode se conectar e ter a conexão aceita. Nesse caso, para o usuário root , as entradas do host são localhost , 127.0.0.1 e ::1 . As duas últimas são entradas IPv4 e IPv6 para a interface de loopback da máquina local ( lo in ifconfig ), respectivamente. A entrada localhost é a representação do nome do host de ambas as entradas IP.
Tudo bem deixar os três lá. Ele apenas garante que você ainda possa acessar o usuário root a partir do sistema local, caso o arquivo /etc/hosts fique estranho e localhost não seja mais resolvido para sua própria caixa.
A única coisa que você realmente precisa se preocupar é se um usuário root no MySQL tiver uma entrada para qualquer host entry OTHER além de localhost , 127.0.0.1 e% código%. Isso pode indicar um risco de segurança.
E a conta ::1 é usada para rotação de logs e coisas, e assim como a conta root só pode ser usada via localhost em uma configuração padrão, então você não precisa se preocupar com isso também.