Nunca pensei que uma atualização no meu servidor de banco de dado
s daria tantos problemas.
A versão 4.1.x do MySQL, usa um protocolo de autenticação baseado em um algorítmo de hashing de senha que é incompatível com aquele usado por outros clientes mais antigos.
Uso um aplicativo openSource em casa, DBDesigner, para criar as tabelas e relacionamentos entre as mesmas.
Algum tempo atrás, andei dando uma reconfigurada nas opções de segurança do MySQL, e eu devo ter desabilitado a opção de compatibilidade com senhas velhas com isso.
Aí começou os problemas, o programinha não conectava mais no banco, porque ocorrera um erro de autenticação.
Instalei, desinstalei o software, e nada.
Ontem, fui instalar o sisteminha WikeMedia no pc, e não dava de jeito nenhum. Me chamou a atenção um aviso que falava de incompatibilidade de autenticação do PHP, com o MySQL 4.1.x.
Foi aí que me dei conta do que havia acontecido, conectei na base, fiz uma listagem de usuários, e as senhas estavam com 41 bytes de comprimento.
Eureca, aí estava o problema.
Nos clientes antigos, o hashing de senha gerado pelo banco, era de apenas 16 bytes.
E como fazer entao para diminuir o hashing de senhas?
s daria tantos problemas.A versão 4.1.x do MySQL, usa um protocolo de autenticação baseado em um algorítmo de hashing de senha que é incompatível com aquele usado por outros clientes mais antigos.
Uso um aplicativo openSource em casa, DBDesigner, para criar as tabelas e relacionamentos entre as mesmas.
Algum tempo atrás, andei dando uma reconfigurada nas opções de segurança do MySQL, e eu devo ter desabilitado a opção de compatibilidade com senhas velhas com isso.
Aí começou os problemas, o programinha não conectava mais no banco, porque ocorrera um erro de autenticação.
Instalei, desinstalei o software, e nada.
Ontem, fui instalar o sisteminha WikeMedia no pc, e não dava de jeito nenhum. Me chamou a atenção um aviso que falava de incompatibilidade de autenticação do PHP, com o MySQL 4.1.x.
Foi aí que me dei conta do que havia acontecido, conectei na base, fiz uma listagem de usuários, e as senhas estavam com 41 bytes de comprimento.
Eureca, aí estava o problema.
Nos clientes antigos, o hashing de senha gerado pelo banco, era de apenas 16 bytes.
E como fazer entao para diminuir o hashing de senhas?
SET PASSWORD FOR 'user'@'host' = OLD_PASSWORD('senha');
Sem mistério, não é mesmo? Se o erro continuar a persistir, faça uma listagem de usuários, e veja quantos usuários com o mesmo nome existem, com hosts diferentes.
Uma coisa interessante nisso tudo, é que eu nao tive problemas usando JAVA, deve ser porque uso uma das últimas versões do JDBC, e provavelmente o mesmo já vem com um cliente atualizado.
Grande abraço...



3 comentários:
Beleza maninho? Hehehe
Pensei que ninguem tinha esse blog...
Mas blz...
Esses caras não acordam pra realidade...(PCC)
Vix... fica na paz maninho!!!
Oiiii Misael!!!
Pois eh talvez agora vms se encontra lah pela UNISC!!!
Legall...
Bjussss
oiiii queridoo!!!
Misael vc eh mt legal msm...
Pena q n se axamos ants...
Entaum tah!!
Txadoruu!!
Bjuss
Postar um comentário