นี่เป็นความหมายจริงๆสำหรับความคิดเห็นในคำตอบก่อนหน้า แต่มีขนาดใหญ่เกินกว่าที่จะแสดงความคิดเห็นใน StackExchange ได้
ฉันก็กำลังทุกข์ทรมานจากปัญหานี้เช่นกัน ดังนั้นฉันจึงสร้างผู้ใช้ใหม่ด้วยแฮชสไตล์ใหม่และตอนนี้ใช้ผู้ใช้ใหม่โดยไม่มีปัญหา นี่คือสิ่งที่ฉันทำ:
[172.16.2.222:mysql Thu Nov 7 16:16:25 2013]> use mysql;
Database changed
[172.16.2.222:mysql Thu Nov 7 16:22:23 2013]> describe user;
describe user;
+-----------------------+-----------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------+-----------------------------------+------+-----+---------+-------+
| Host | char(60) | NO | PRI | | |
| User | char(16) | NO | PRI | | |
| Password | char(41) | NO | | | |
ฉันยินดีที่จะเห็นว่าคอลัมน์รหัสผ่านของเรากว้างพอที่จะเก็บแฮชแบบใหม่แล้ว (หากมีความกว้างน้อยกว่า 41 ตัวอักษรฉันอาจไม่มีความกล้าที่จะขยาย :-)
[172.16.2.222:mysql Thu Nov 7 16:13:10 2013]> show variables like '%pass%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| old_passwords | ON |
| report_password | |
+-----------------+-------+
2 rows in set (0.06 sec)
old_passwords
การON
เป็นปัญหาชัดเจนดังนั้นฉันจึงเปลี่ยนชั่วคราว:
[172.16.2.222:mysql Thu Nov 7 16:13:59 2013]> set session old_passwords = 'OFF';
Query OK, 0 rows affected (0.05 sec)
[172.16.2.222:mysql Thu Nov 7 16:14:12 2013]> show variables like '%pass%';
show variables like '%pass%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| old_passwords | OFF |
| report_password | |
+-----------------+-------+
2 rows in set (0.06 sec)
จากนั้นฉันสร้างผู้ใช้ใหม่:
[172.16.2.222:mysql Thu Nov 7 16:14:16 2013]> create user 'erich' IDENTIFIED BY 'SEKRIT PASSWORD';
... และดูที่แฮชใหม่:
[172.16.2.222:mysql Thu Nov 7 16:14:26 2013]> select * from user order by User;
+-----------+--------------+-------------------------------------------+--------
| Host | User | Password | Select_
+-----------+--------------+-------------------------------------------+--------
| localhost | someguy | 3d9505dd323e53f1 | Y
| % | someotherguy | 79b3df3b004bb855 | Y
| % | erich | *D2589EF6B59146801234567897BB190123456789 | N
| % | anotheroldguy| 60577e0d77b9212b | Y
สังเกตว่าแฮชของฉันใหญ่กว่าตัวอื่นอย่างไร!
เพียงเพื่อจะเป็นระเบียบเรียบร้อยผมตั้งกลับไปold_passwords
OFF
นี่อาจไม่มีประโยชน์เพราะฉันไม่สามารถคิดได้ว่าทำไมใคร ๆ ก็ต้องการสร้างผู้ใช้ใหม่ด้วยรหัสผ่านเก่า แต่ใครจะรู้
อย่างไรก็ตาม: วิธีนี้แก้ไขได้สำหรับฉัน