常见的数据库1045密码错误问题解决方法
作者:暮夏有七
注:可视化工具 Navicat 15 for MySQL
当我们某天忘记我们的root用户密码,登录不到数据库时,只需要修改root用户的密码即可。
1.首先看一下报错信息1045
2.看到这个问题,我们可以找到我们MySQL安装路径下的my.ini文件,使用记事本或者edit打开它。
如果不能打开放到桌面进行打开修改。
3.找到**[mysqld]** 一般在第一行,在它的下面加上skip-grant-tables
加上之后的样子
那么skip-grant-tables是用来干什么的呢?
skip-grant-tables作为启动参数的作用:MYSQL服务器不加载权限判断,任何用户都能访问数据库。
**注意:**但是加上它会降低我们数据库的安全性,可以在解决问题之后删除掉它。
如果没有my.ini文件,可以在桌面新建my.ini配置文件,其配置内容如下
**注意:**要修改成你自己存放的mysql路径。
[mysqld] skip-grant-tables #datadir=C:\Program Files\mysql-8.0.31-winx64 # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=C:\Program Files\mysql-8.0.31-winx64 # 设置mysql数据库的数据的存放目录 datadir=C:\Program Files\mysql-8.0.31-winx64\\Data # 允许最大连接数 max_connections=200 # 允许连接失败的次数。 max_connect_errors=10 # 服务端使用的字符集默认为utf8mb4 character-set-server=utf8mb4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 默认使用“mysql_native_password”插件认证 #mysql_native_password default_authentication_plugin=mysql_native_password federated sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES # 设置时区(mysqld下) default-time_zone='+08:00' [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8mb4 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8mb4
4.使用管理员身份打开命令行(cmd)
(1)在命令行中输入 mysql -u root -p,这个命令是连接数据库服务器的命令;遇到Enter passward:直接回车;
显示这个样子就是成功进入数据库了
(2)接着在下方执行操作:use mysql; 这是选择我们的数据库
(3)修改数据库用户root密码:update user set password=password(“123456”) where user=“root”;
需要注意的是:我的MySql版本是8.0.31的相对于5.7版本 在执行上述的修改语句是有语法错误的。
所以我这里使用:ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’; 来修改密码的。
看到这个结果说明我们已经修改成功了
(4)刷新数据库 flush privileges; 这样就OK了
最后,人的惰性是非常可怕的,距离上次写博客快半年了,希望大家也有养成好习惯!
总结
到此这篇关于常见的数据库1045密码错误问题解决的文章就介绍到这了,更多相关数据库1045密码错误内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!