mysql的加密函数PASSWORD和OLD_PASSWORD

mysql在4.1版本之前,password加密的结果是十多位的字符串,4.1后password加密的结果是40位左右的字符串,但可用old_password函数替代password函数来解决过渡的问题,也可以更改my.conf中old_password=0来继续使用老的password函数。

今天碰到的问题是这样的,我的空间是租用的虚拟主机,之前一直用的是新的password函数,今天换了一下主机,mysql依然是5.0,但新主机my.conf把old_password启动了,搞的用户都无法登录,5.0mysql有old_password但没有new_password,我又改不了my.conf。

解决方法就是set:

mysql_query("set old_passwords =0",$db);

这问题其实不算问题,是我太愚蠢了。