确定mysql版本
使用数据库连接工具查询
可以使用dataGrip 或者 navicat
- 新建查询
- select version();
查询结果:
5.7.18-log
登陆mysql查询
[root@www bin]# ./mysql -uroot -p
Enter password:
(省略)
mysql> select version();
±-----------+
| version() |
±-----------+
| 5.7.18-log |
±-----------+
1 row in set (0.00 sec)
修改密码
版本说明
使用select * from mysql.user 查询便知
- mysql 5.7版本前,user表保存密码的字段是password
- mysql 5.7版本后,user表保存密码的字段是authentication_string
执行修改
5.7版本后
update mysql.user set authentication_string=password(‘123456’)
and password_last_changed = now()
where user = ‘root’;
FLUSH PRIVILEGES;
5.7版本前
update mysql.user set password=password(‘123456’) where user = ‘root’;
FLUSH PRIVILEGES;
啰嗦一句
网上大部分文章都是指5.7版本前的修改指令,没有写明版本,或者是因为文章写得太久了,未维护。针对此问题,查询解决办法的时候一定要带上自己的版本号,遇到的具体问题,才能更快速的解决问题。