因小弟菜鸟一枚,今天弄mysql的时候在mysql里面修改mysql里root用户密码,刷新权限均无报错,退出后重新登录报错如下:
[root@localhost ~]# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
密码正确,但可以使用mysql命令直接登录mysql,不过里面没有原来新建的数据库,百思不得其解。
后经高人指点,终于解决。小弟今贴出解决办法,希望对需要的人又所帮助,也给自己加深一下印象,方便查阅。
解决方法:
[root@localhost ~]# /etc/init.d/mysqld stop
Stopping mysqld: [ OK ]
[root@localhost ~]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking&
[root@localhost ~]# mysql -uroot mysql
mysql> update user set password=PASSWORD('new password') where user='root';
[root@localhost ~]# /etc/init.d/mysqld start
[root@localhost ~]# mysql -uroot -p
Enter password: 输入新设置的密码new password
mysql>
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| cacti |
ok了。