2012-02-17 4 views
0

ユーザ名とパスワードを含むテーブルを持つMySQLデータベースがあります。私はすべてのパスワードをランダム化するbashスクリプトまたはMySQLのステートメントが必要です。MySQLテーブル内のすべてのパスワードをランダム化

私はbashのとをループがループしながら読み込むことができます

select md5(rand()) as password; 

のようなものを1つのパスワードをリセットすることができます。すべて一緒に置くだけで助けが必要です。

Yews私はパスワードがクリアに格納されるべきではないことを知っています。それは、私たちが人を移動させているレガシーシステムです。

答えて

2
UPDATE `users` SET `password` = md5(rand()) 
+0

素晴らしいです。私はそれらがすべて同じパスワードに設定されていると思ったが、うまくいった。私はUPDATE 'accounts'を使用しました。' password' = SUBSTRING(MD5(RAND())FROM 1 FOR 8); – ollybee

0

私はあなたがすべてのユニークなそれらを保つために、MD5にちょうどCONCAT現在のパスワードのことができるようにすべきだと思います。

UPDATE passwords SET password = md5(CONCAT(RAND(), password)) 
+0

あなたは正しいですが、私のリセットの理由は彼らが侵害されたため、これを実行すると古いものから新しいパスワードを引き出すことができたはずです。 – ollybee

+0

そのため、RANDをその中に入れているので、ランダム性の要素があり、新しいパスワードを派生させることは不可能です。 – Joe

関連する問題