问题:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
问题描述:在linux中使用mysql -uroot -p 输入密码提示如上错误
解决方法:
1、先停掉原来的服务
service mysqld stop
2、使用安全模式登陆,跳过密码验证
mysqld_safe --user=mysql --skip-grant-tables --skip-networking&
安全模式启动报错,重进mysql报:RROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
1)、查看mysql.sock的位置是否正确
/etc/my.cnf中查看,如不是则修改路径为/var/lib/mysql/mysql.sock
2)、重新启动mysql服务
service mysqld restart
3)、查看服务是否重启成功,并创建一个软链接
service mysqld status 状态为running 则说明启动成功
创建软连接 ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
4)、停止服务并重新以安全模式启动
如还是报一样的错误,请重新启动服务并查看/tmp/mysql.sock软链接的实际文件是否存在,红底闪动表示源文件存在问题
3、登录mysql
mysql -uroot mysql
4、修改密码
update MySQL.user set authentication_string=password('newpassword') where user='root';
5、刷新权限
flush privileges;
6、退出mysql
quit;
7、退出安全模式,已正常模式登录mysql
查看mysql相关进程 ps aux |grep mysqld
杀掉mysql所有相关进程 kill -9 进程号
重新查看mysql进程,如下表示进程杀掉成功
8、重启mysql服务
service mysqld restart
9、执行其他命令:show databases; 提示如下错误
You must reset your password using ALTER USER statement
before executing this statement.
10、重新将密码设置一遍即可
mysql > set password = password ('newpassword');
其他命令:
1、查看端口号是否已经打开
lsof -i:3306
2、查找文件或者文件夹命令
find src type filename filetype 如:find / -name my.cnf 或者 find /var -name mysql -d
3、编辑文件
vi/vim 文件名 进入文件之后按 i 可对文件进行编辑操作 :w保存文件 :q退出文件 :wq保存退出
4、查看文件尾部
tail -row 如 tail -50