这个报错是由于root密码不对(可能你记错了),重置root 密码就可,方法如下,亲试有效(Windows环境下)!

1 管理员身份进入cmd

点击“开始”菜单——>输入cmd(右键以管理员方式运行)

2 解决1045

2.1 往my.ini文件加 skip-grant-tables 指令

在mysql安装目录下找到my.ini文件,默认安装在c盘,我安装在e盘的,直接在指定盘下搜索:

打开编辑my.ini文件:

2.2 进入刚才打开的cmd命令窗口(记住每一步用完cmd指令窗口,不必关闭,之后所有指令都可在同一个窗口执行

Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\windows\system32>net stop mysql    //停止mysql服务
MySQL 服务正在停止.
MySQL 服务已成功停止。


C:\windows\system32>net start mysql    //再开启mysql服务,让刚才修改的文件生效
MySQL 服务正在启动 .
MySQL 服务已经启动成功。


C:\windows\system32>mysql -u root -p    //登录root账户
Enter password:   //此时不需要输入密码,直接Enter就可登录,但是很多操作受限。

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.21 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use mysql;    //进入数据库
Database changed


mysql> update user set password=password("123456") where user="root"; //给root设置新密码,新密码为123456   
Query OK, 3 rows affected (0.09 sec)
Rows matched: 3  Changed: 3  Warnings: 0

mysql> flush privileges;    //刷新数据库
Query OK, 0 rows affected (0.02 sec)

mysql> quit;    //退出
Bye

 2.3 再次编辑my.ini文件,删除刚才输入的 skip-grant-tables 命令,保存,退出。进入刚才的cmd窗口,执行以下命令,成功:

C:\windows\system32>net stop mysql    //再次停止mysql服务
MySQL 服务正在停止.
MySQL 服务已成功停止。


C:\windows\system32>net start mysql    //再次开启mysql服务,使刚才修改的my.ini文件生效
MySQL 服务正在启动 .
MySQL 服务已经启动成功。


C:\windows\system32>mysql -uroot -p    //登录root账户,在下面输入密码123456,连接成功!
Enter password: ******
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.21 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

此时进mysql的图形用户界面 Navicat,也是可以连接成功,并可进行自定义操作。

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐