于吉吉的技術博客

          建造高性能門戶網

            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 陳于喆 閱讀(296) 評論(0)  編輯  收藏 所屬分類: mysql
          主站蜘蛛池模板: 贵州省| 衡阳市| 缙云县| 泗水县| 金溪县| 平遥县| 合江县| 巩留县| 临泉县| 江永县| 习水县| 镇巴县| 阳城县| 阜平县| 镇沅| 呼伦贝尔市| 蒙阴县| 盐津县| 化州市| 桂阳县| 永嘉县| 吉林市| 长阳| 三江| 襄城县| 东宁县| 游戏| 内黄县| 农安县| 钦州市| 扬中市| 太白县| 浏阳市| 建水县| 天气| 马鞍山市| 南华县| 香港| 陈巴尔虎旗| 墨玉县| 永济市|