关闭

Windows下MySql错误代码1045的解决方法

标签: mysql1045 windows
2183人阅读 评论(1) 收藏 举报
分类:

笔者有一段时间没有使用本机的mysql了,偶然今天因工作需要需要使用,使用root登录时,提示1045错误,root居然无法登录!在网上很多解决方法都是linux下的,如果你去找什么“/etc/mysql/debian.cnf“,会大失所望。

后来又搜索windows下的mysql 1045错误,找到了一个比较靠谱的。

原文网址是:http://www.th7.cn/db/mysql/201403/46981.shtml

不过也不是完全都能解决的。

具体解决步骤如下(亲测):

(1)停止mysql,在运行中搜 services.msc,(或者开始菜单->控制面板->管理工具->服务)打开服务管理,然后找到mysql服务,关闭他。

(2)打开命令行,转到mysql的bin目录下;如D:\Program Files\MySQL\MySQL Server 5.7\bin

输入:d: 回车 

输入  cd D:\Program Files\MySQL\MySQL Server 5.7\bin 回车

C:\Windows\System32>d:
D:\>cd D:\Program Files\MySQL\MySQL Server 5.7\bin
D:\Program Files\MySQL\MySQL Server 5.7\bin>mysqld-nt --skip-grant-tables
'mysqld-nt' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
</span><span style="color:#ff0000;">注意 mysqld-nt 中间应该有个空格!网上都是拷贝的稀烂的。</span><span style="color:#010101;">
D:\Program Files\MySQL\MySQL Server 5.7\bin>mysqld -nt --skip -grant -tables
2016-06-02T02:30:06.135093Z 0 [Warning] option 'new': boolean value 't' wasn't r
ecognized. Set to OFF.
2016-06-02T02:30:06.136093Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
 deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
umentation for more details).
2016-06-02T02:30:06.136093Z 0 [Note] mysqld (mysqld 5.7.3-m13) starting as proce
ss 4776 ..


 



注:skip-grant-tables参数用了之后,就可以跳过登录校验;

网上也有说可以修改my.ini中的设置的,不过我中感觉修改ini不太靠谱,万一不慎出现了1067就麻烦了。还是不用为好。

然后cmd就停在那里了,也不知道发生了什么。查看服务,发现mysql并没有启动。

(3)再打开一个命令行(因为刚才那个DOS窗口已经不能动了),同样转到mysql的bin目录下;

(4)按照网上所得直接运行mysql提示:

C:\Windows\System32>d:
D:\>cd D:\Program Files\MySQL\MySQL Server 5.7\bin
D:\Program Files\MySQL\MySQL Server 5.7\bin> mysql
ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)


然后就不知道怎么处理这个ODBC了。不过我想,居然已经使用了“跳过登陆校验”,是否可以直接登陆呢?

于是尝试输入:mysql -u -root -p 在提示Enter password的时候直接 回车,居然可以登陆了!然后发现mysql也居然神奇的启动了。(后来发现前一个控制台也反应过来了,也可能是之前的启动了?不过还不清楚,总之是可以跑了)

D:\Program Files\MySQL\MySQL Server 5.7\bin> mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.0.45-community-nt MySQL Community Edition (GPL)

Copyright (c) 2000, 2013, 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.


(5)剩下的就是使用sql语句来改变root的密码了:

mysql> use mysql
Database changed
mysql> UPDATE user SET password=PASSWORD("123456") WHERE user="root";
Query OK, 1 row affected (0.03 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> mysql>FLUSH PRIVILEGES;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'mysql
>FLUSH PRIVILEGES' at line 1
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

 

大功告成,使用管理工具sqlyog登陆,发现可以了。

 

然而并没有结束,登陆后发现我的表怎么都没有了?但是去我设定的data目录去看,表还是存在的,为什么呢?

难不成是因为设了个密码就不复存在了?重启后再尝试还是一样。

 

而后我发现是因为自己最近装了一个WAMP5,里面居然自带的有mysql服务,将之关闭之后,再次登录mysql,发现原来的表回来了。

于是出现登录问题的原因找到了,电脑上存在了两个mysql,后面的一个mysql并没有进行设定,但端口还是3306,所以root是登录不上去的,导致原来的mysql被屏蔽了。







0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

安装mysql 5.7.16-win64 MySQL 1045登录失败 问题的解决

安装mysql 5.7.16-win64 MySQL 1045登录失败 问题的解决     Mysql5.7.16-win64 下载的是Zip 版。解压至你的mysql 目录下。 配置my...
  • davidlsm
  • davidlsm
  • 2016-11-19 12:37
  • 3215

**解决mysql 1045拒绝登陆的问题**

解决mysql 1045拒绝登陆的问题当你登录MySQL数据库出现:Error 1045错误时(如下图),就表明你输入的用户名或密码错误被拒绝访问了,最简单的解决方法就是将MySQL数据库卸载然后重装...
  • u010652576
  • u010652576
  • 2015-03-31 15:24
  • 2705

#1045 无法登录 MySQL 服务器

今天遇到了1045错误,其实去年那个时候也遇到过。上次的情况是1045错误和不能通过匿名登录mysql使用了第一种方法就可以解决了,但是这次出现的情况是在命令行中居然可以匿名登录mysql,但是没有m...
  • u010566813
  • u010566813
  • 2015-04-20 20:35
  • 6135

Navicat for MySQL连接MYSQL出错,错误代码1045的解决方法

解决办法:重新设置root用户密码 第一种方法: 打开“开始”——“程序”——“MySQL“——”MySQL 5.0“——”MySQL Server Instance Config Wizard...
  • Zhangxichao100
  • Zhangxichao100
  • 2015-10-29 14:24
  • 18953

MySql错误代码1045的解决方案

MySql错误代码1045的解决方案 错误代码 1045 Access denied for user 'root'@'localhost' (using password:YES) 解决办法是重新...
  • zhao50632
  • zhao50632
  • 2014-01-23 10:59
  • 864

Foxmail 错误代码 常见故障解决方法

  • 2012-11-28 14:28
  • 40KB
  • 下载

ADSL常见错误代码的解决方法

  • 2012-03-14 23:12
  • 38KB
  • 下载

宽带拨号时出现691、678等各类错误代码,解决方法!

  • 2012-03-14 10:14
  • 30KB
  • 下载

柯尼卡1212错误代码及解决方法

  • 2009-06-27 00:01
  • 4KB
  • 下载

UT163U盘量产错误代码code0x54 0xA2解决方法

  • 2011-03-30 21:09
  • 2.42MB
  • 下载
    个人资料
    • 访问:32879次
    • 积分:371
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:9篇
    • 译文:0篇
    • 评论:8条
    最新评论