Problemet her skyldtes to samtidige problemer.
- På fjernserveren blev den globale indstilling OLD_PASSWORDS sat til 1 - hvilket betyder, at adgangskoder blev hashed i metoden før 4.1.
- rodkontoen var blevet kodet i den nyere hashing-metode på trods af den globale indstilling (formodentlig var den blevet indtastet før denne parameter blev indstillet), hvilket betyder, at den fik adgang via ODBC-forbindelsen, fordi den nye hashing blev begyndende genkendt.
Den globale indstilling fik funktionen PASSWORD() i MySQL til at hash en hvilken som helst indtastet værdi i den gamle metode i stedet for den nye metode, som den skulle.
Jeg gik ud fra, at DBA havde sat OLD_PASSWORDS til 1 af en god grund, så som en løsning brugte jeg
Brug af password()-funktionen havde ikke fungeret tidligere, fordi den globale indstilling OLD_PASSWORDS=1 fik den til at bruge samme hashing som OLD_PASSWORD()-funktionen. Sessionsindstillingen tillod den at producere den korrekte adgangskode.