密码字节数的问题,设置 old_passwords=0 即可解决;
在 mysql的my.ini文件中将old_passwords=1 修改为 0;
或者 set old_passwords =0;
一、修改以前的:
mysql> SELECT user, Length(`Password`) FROM `mysql`.`user`; +------+--------------------+ | user | Length(`Password`) | +------+--------------------+ | root | 16 | | root | 0 | | | 0 | | test | 16 | | test | 16 | +------+--------------------+ 5 rows in set二、修改 old_passwords;
mysql> set old_passwords=0; Query OK, 0 rows affected三、修改用户:
mysql> UPDATE mysql.user SET Password = PASSWORD( ') WHERE user = 'root '; Query OK, 2 rows affected Rows matched: 2 Changed: 2 Warnings: 0 Query OK, 0 rows affected四、查看:
SELECT user, Length(`Password`) FROM `mysql`.`user`; +------+--------------------+ | user | Length(`Password`) | +------+--------------------+ | root | 41 | | root | 41 | | | 0 | | test | 16 | | test | 16 | +------+--------------------+ 5 rows in set
可以看到已经更新成功了,将其他用户都更新了即可。