问题描述:
错误代码 1045
Access denied for user ‘root’@’localhost’ (using password:YES)
解决办法
通过网上查资料,最后得出结论是要修改mysql的root密码。
修改密码的办法网上也是复杂的不要不要的,而且由于我的是mysqlserver5.7所以很多的办法都不适用。
windows下行动
我就直接把mysql存储数据的那个文本文档给删除了,在数据库中数据已备份的情况下删除数据库中的my.ini,然后就简单了,这时的MySQL的root密码已经被清除了。然后打开数据库运行一下查询语句即可修改密码。
use mysql;
update user set password=password('newpassword') where user='root';
flush privileges;
ubuntu下解决办法
首先找到ubuntu下mysql的配置文件,用vim打开
[root@localhost ~]# vim /alidata/server/mysql/my.cnf
在[mysqld]下添加跳过授权表语句,即无需密码直接进入
[mysqld]
skip-grant-table //跳过授权表,即无密码直接进入
接下来的修改密码这个就简单了
mysql>UPDATE user SET Password=PASSWORD('newpassword') whereUSER='root'
mysql>FLUSH PRIVILEGES;
mysql>\q
然后重启mysql
service mysqld restart
总结
我的windows下的解决办法比较粗暴,但是这个问题最终都是要通过修改密码来解决的,在数据库已备份的情况下或者对数据库操作不熟悉的情况下可以直接使用这个办法。但是不推荐使用这个办法。
ubuntu下的解决办法相对来说就是比较合理的那种,不损坏数据库中的原始数据,比较实用。