在场景2中,如果您未显式使用OLD_PASSWORD()更改密码,则4.1之前的客户端将无法再访问短哈希账户。在场景3中,使用--old-passwords可以防止短哈希账户的访问问题,但是密码更改操作会将账户的长哈希转换为短哈希,这意味着在--old-passwords有效时无法将其改回长哈希。升级到MySQL 4.1或更新版本后,如果您的应用程序使用PASSWORD()生成密码哈希值,则可能会遇到兼容性问题。建议应用程序修改为使用其他函数,如SHA1()或MD5()来生成哈希值,而不是使用PASSWORD()。对于从MySQL 4.0或更低版本升级到4.1或更高版本的情况,PHP编程人员应该查看旧客户端2.8部分,了解MySQL用户账户管理的具体设置。