2016年(73)
分类: 数据库开发技术
2016-10-09 09:32:23
连接MySQL数据库时难免会遇到1045错误,主要是因为用户输入的用户名或密码错误被拒绝访问,如果不想重装,需要找回密码或者重置密码。
Navicat for MySQL 1045错误
问题描述:
1045-Access denied for user 'root'@'localhost'(using password: YES)
原因分析:
当登录MySQL数据库出现:Error 1045错误时,就表明你输入的用户名或密码错误被拒绝访问了,最简单的解决方法就是将MySQL数据库卸载然后重装,但这样的缺点就是以前数据库中的信息将丢失。如果你不想重装,那么就需要找回密码或者重置密码。解决的方法应该有多种,下面这种方法适用于Linux系统。如果你想寻找适合Windows系统的解决方法,可以查看文章:Navicat for MySQL 1045错误如何解决。
解决方案:
1、停止服务
执行:/etc/init.d/mysqlstop
你的机器不一定是/etc/init.d/mysql也可能是/etc/init.d/mysqld,可以通过find命令查找。
2、跳过验证
执行:/usr/local/mysql/bin/mysqld_safe--skip-grant-tables >/dev/null 2>&1 &
如果mysqld_safe的位置不一样,可以用find命令查找。
3、修改密码
执行:
登录mysql:/usr/local/mysql/bin/mysql -u root mysql
修改密码:mysql> UPDATE userSET password=PASSWORD(‘newpswd’)WHERE user=’root’
刷新MySQL权限相关的表:mysql>flush privileges
退出MySQL:mysql>exit
4、重启服务
执行:
关闭mysql进程:killall mysqld
启动mysql服务:/etc/init.d/mysql start
关于 Linux系统解决Navicat for MySQL 1045错误的方法比较简便,按照以上步骤操作就可以解决。
本文来源于: