navicat连接mysql修改root密码最简洁方法
navicat连接mysql修改root密码
1、在navicat中选中目标数据库打开链接;
右键打开链接后,点击命令行界面
;
2、命令行中输入修改语句;
弹出的命令行对话框已经是用root登录的,直接修改密码即可:
?1 | set password = password( "新密码" ); |
补充:MySQL数据库忘记root密码,Navicat修改root密码
今天准备练手一个小项目,项目配置数据库的时候,发现忘记了root密码,于是我就在网络上查找解决办法,我用的mysql的版本是比较新的8.0.27,用网络上大部分方法根本解决不了问题,所以查阅了很多资料,最终解决了问题;
我的情况:项目导入表结构用的是Navicat Premium 15,是记住密码的,所以我能进入数据库进行修改;
网络上修改root密码的方法基本解决不了MySQL高版本问题,因为高版本的MySQL废弃了password字段和password()函数,而是使用authentication_string字段表示用户密码。
如果有工具可以进入数据库,建立查询,执行相应的SQL;
如果当前root用户authentication_string字段下有内容,先将其设置为空;
?1 2 | USE mysql; UPDATE user SET authentication_string = '' WHERE User = 'root' ; |
然后执行以下三句SQL;
?1 2 3 4 | -- user表中如果没有“%”,则不执行第一条 ALTER user 'root' @ '%' IDENTIFIED WITH caching_sha2_password BY '新密码' ; ALTER user 'root' @ 'localhost' IDENTIFIED WITH caching_sha2_password BY '新密码' ; FLUSH PRIVILEGES ; |
注释:host -%表示远程连接密码
-localhost表示本地连接密码
注意:若项目中需要连接数据库应使用‘mysql_native_password’进行密码加密;
此时密码修改完成;
以上情况适用于使用工具能够登陆数据库,如果没有工具不能登陆数据库:
1. 使用Xshell连接服务器输入:sudo service mysql stop 停止服务;
2. 找到配置文件my.cnf,在[mysqld]下添加 skip-grant-tables 跳过登录检查;
3. 重启MySQL服务并登录;
4. 执行上述SQL语句;
5. 将第二步配置文件内容改回来;
到此这篇关于navicat连接mysql修改root密码的文章就介绍到这了,更多相关navicat连接mysql修改密码内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/csdn_avatar_2019/article/details/124885675
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。