解决步骤
- Open & Edit
/etc/my.cnf
- Add
skip-grant-tables
under [mysqld] - Restart Mysql
- You should be able to login to mysql now using the below command
mysql -u root -p
- Run mysql>
flush privileges;
- Set new password by
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
- Go back to
/etc/my.cnf
and remove/commentskip-grant-tables
- Restart Mysql
- Now you will be able to login with the new password
mysql -u root -p
便捷安装
yum -y install mysql\ && yum -y install mysql-devel\ && yum -y install wget\ && wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm\ && rpm -ivh mysql-community-release-el7-5.noarch.rpm\ && yum -y install mysql-community-server# 设置mysql密码及开启远程连接[root@localhost ~] service mysql start# Redirecting to /bin/systemctl start mysql.service[root@localhost ~] mysql -u root# Welcome to the MySQL monitor. Commands end with ; or \g.# Your MySQL connection id is 2# Server version: 5.6.38 MySQL Community Server (GPL)# Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.# Oracle is a registered trademark of Oracle Corporation and/or its# affiliates. Other names may be trademarks of their respective owners.# Type 'help;'or'\h' for help. Type '\c' to clear the current input statement.mysql> set password for 'root'@'localhost' =password('newpasswd');# Query OK, 0 rows affected (0.00 sec)mysql> grant all privileges on *.* to root@'%'identified by 'newpasswd';# Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;# Query OK, 0 rows affected (0.00 sec)mysql> quit# Bye# 防火墙关闭测试下[root@localhost ~] systemctl stop firewalld.service[root@localhost ~] mysql -V# mysql Ver 14.14 Distrib 5.6.38, for Linux (x86_64) using EditLine wrapper复制代码