连接数据库出现1045错误-修改数据库密码

连接数据库出现1045错误

代表 提示密码错误

解决方法:

1.以管理员权限进入命令行

2.进入MySQL的bin目录下

cd E:\mysql-8.0.26-winx64\mysql-8.0.26-winx64\bin

 3.关闭mysqld的进程

先输入 tasklist |findstr mysqld        这行命令可以用来查看mysqld是否在运行,在运行中则可以查到它的PID

再输入 taskkill /F /PID xxxx             xxxx是从前面一条命令得到的PID值

4.更改密码

1)关掉命令行
2)打开MySQL安装目录下的my.ini文件,在[mysqld]下添加 skip-grant-tables,可以跳过权限直接进入MySQL服务端,

my.ini文件内的信息

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\mysql-8.0.26-winx64\mysql-8.0.26-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\mysql-8.0.26-winx64\mysql-8.0.26-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
4)重新以管理员身份打开命令行,进入MySQL的bin目录下
5)如果skip-grant-tables无法使用,可以初始化MySQL,获取初始密码

注:如果无法启动服务,就关掉MySQL的所有服务,删掉MySQL目录下的data文件,cd E:\mysql-8.0.26-winx64\mysql-8.0.26-winx64\bin 再重新进入bin目录下输入

mysqld -install 重新安装MySQL服务

初始化My SQL数据库

初始化MySQL,成功后系统会重新创建一个data文件。

mysqld --initialize --console

 如果出现这样情况就是说明data已经创建过了,删了data可以重新正常运行,如果data删不了的话需要按住win+r然后输入services.msc,回车找到mysql

然后关闭它,就可以删了data了

如果运行成功的话,会在最后一行的note中看到一个root@loclhost:。。。后面的是随机初始密码,把他记下来

6)启动mysql

net start mysql

会出现服务正在启动和服务成功

7)修改mysql密码

这里有个需要注意的地方,在8.0之后的版本,修改root用户密码的命令是:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

 之前的版本是:

update mysql.user set authentication_string=password("你的密码") where user="root";

 

posted @ 2023-01-07 14:47  kuailest  阅读(104)  评论(0编辑  收藏  举报