于吉吉的技术博客

建造高性能门户网

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  65 随笔 :: 6 文章 :: 149 评论 :: 0 Trackbacks
前天迁移了一个老系统,用的mysql是4.0要迁移到5.0的环境下,发现了一个问题,在password()函数上发生错误,查一查原来password()函数在mysql5.0已经发生了变换
在mysql4.0下

mysql> select password('abc'); 
+------------------+ 
| password('abc')  | 
+------------------+ 
| 7cd2b5942be28759 | 
+------------------+ 

而在mysql5.0下

select password('abc');  
+-------------------------------------------+  
| password('abc')                           |  
+-------------------------------------------+  
| *0D3CED9BEC10A777AEC23CCC353A8C08A633045E |   
+-------------------------------------------+ 

经查资料,在mysql5.0下使用old_passord()函数就可以得到与4.0一样的效果

select old_password('abc');  
+---------------------+  
| old_password('abc'|  
+---------------------+  
| 7cd2b5942be28759    |   
+---------------------+ 


但只要需要改动到程序,再进行查资料

两个函数都可以用password() 函数调用,
控制开关由/etc/mysql/my.cnf中的old_passwords变量设定:
设置为“0” ,调用新的password函数,
设置为”1″,就调用旧的password函数。

问题最终解决,不用修改程序

----------------------------------------

陈于喆
Mail: chenyz@corp.netease.com
posted on 2010-08-23 10:41 陈于喆 阅读(283) 评论(0)  编辑  收藏 所属分类: mysql

只有注册用户登录后才能发表评论。


网站导航: