2011-12-28 90 views
0

我在mysql server 5.0中有很多用戶(privilages)。 我想將它們全部轉移到新的MySQL服務器5.5中。但密碼是舊格式的(在`mysql`.`user`表中)。所以我想將所有舊密碼轉換爲新格式。如何從MySQL舊密碼升級到新密碼系統

有什麼辦法可以在不改變它們的情況下傳輸和升級MySQL密碼?

+0

的確我想知道的是mysql舊密碼單向編碼哈希還是不行? – Mahoor13 2011-12-29 06:16:57

+2

這是一種單向編碼散列。 – 2014-01-24 18:18:00

回答

0

假設你知道的密碼,您可以

set password = password('samepasswordasbefore'); 
old_passwords後

已被設置爲關閉服務器或會話。

set old_passwords = 'OFF'; 

set [session] old_passwords = 'OFF'; 

服務器不在乎/知道它是相同的密碼之前。

因此,從安全角度來看,運行軟件沒有風險,您應該更改密碼,因爲舊密碼可能已被破壞。當然,強迫它們定期更換會更好,在這種情況下,您可以將old_passwords設置爲OFF並等待。

做批量設置的密碼不會那麼容易,但如果old_passwords已關閉一段時間,應該只有一些帳戶與舊的短用戶散列。您至少可以將未更新的那些標識爲用戶表中具有較短散列的那些標識。