一、mysql登录错误
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
解决办法:破解mysql密码
1>停止mysql服务:service mysqld stop
2>杀死所有mysqld相关的进程,建议使用kill -9 ,一步到位
3>执行命令:> mysqld_safe --skip-grant-tables & mysql -uroot -p 回车进入
> use mysql;
> update user set password=PASSWORD("newpass")where user="root";
更改密码为 newpass
> flush privileges; 更新权限
> quit 退出
4>重启mysql服务:service mysqld restart
5>连接数据库:mysql -uroot -p new-passwd
二、忘记本地root的登录密码
解决过程:
1、编辑/etc/my.cnf
在[mysqld] 配置部分添加一行
skip-grant-tables
2、保存后重启mysql
[root@localhost etc]# service mysqld restart
3、登录数据库重新设置root密码
[root@localhost ~]# mysql -uroot -p mysql
Enter password:
直接回车进入
mysql> show databases;
执行下列语句
mysql> update user set password=password("mysql") where user='root';
mysql> flush privileges;
4、删除/etc/my.cnf文件中添加的“skip-grant-tables”行,重启mysql;
用新设的密码就能正常登录了;