Aparentemente, o jeito certo de fazer isso é:
RENAME USER user@ipaddress1 TO user@ipaddress2;
Isso cuida de todas as doações.
Eu tenho um número de usuários que estão se conectando ao MySQL através de uma VPN, então temos concessões ao longo das linhas de "grant select on foo. * para user @ ipaddress1" e assim por diante.
Esta semana, o IP usado na VPN mudou para address2, portanto, o usuário @ ipaddress1 não dá mais trabalho.
Qual é a melhor maneira de lidar com a atualização do usuário e conceder informações no MySQL para refletir essa mudança?
Observe que as doações são uma grande confusão, pois alguns usuários são excluídos de determinadas colunas em tabelas específicas, por isso tivemos que fazer concessões em torno dos objetos excluídos.
Aparentemente, o jeito certo de fazer isso é:
RENAME USER user@ipaddress1 TO user@ipaddress2;
Isso cuida de todas as doações.
Se você tiver uma sub-rede dedicada para seus usuários de VPN, a seguinte sintaxe funciona bem.
GRANT ALL ... user_name@'192.168.1.%'
Atualize o campo do host na tabela do seu usuário:
update mysql.users set Host = newIP where Host = oldIP;
flush privileges;
Tags mysql