1.在mysql的配置文件里面,默认是/etc/my.cnf,在[mysqld]段落里加上skip-grant-tables,如下图:
然后停止mysql数据库:
ps aux|grep mysql|grep -v grep|awk '{print $2}'|xargs kill -9
然后启动数据库,输入mysql就可以进入数据库了,然后use mysql;
输入:
UPDATE user SET password=PASSWORD('123456') WHERE user='root';
就将root的密码更新为123456了。退出数据库,将mysql配置文件里的skip-grant-tables去掉,重启数据库就可以用
刚才设置的密码进入数据库了。
2. /usr/local/mysql/bin/mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
接着进行登录
/usr/local/mysql/ bin/mysql -u root mysql
/usr/local/mysql/ bin/mysql -u root mysql
此时就可以更改root密码,然后重新启动MySQL
mysql> update user set password='12345' where user=root;