1、首先停止mysql服务进程:
service mysql stop
2、编辑mysql的配置文件my.cnf
vim /etc/my.cnf
3、找到 [mysqld]这个模块:
在最后面添加一段代码
skip-grant-tables ##忽略mysql权限问题,直接登录
4、然后保存 :wq!退出
启动mysql服务:service mysqld start
5、然后修改密码
mysql> use mysql; ##使用mysql数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set password=password("123456") where user="root";##更新密码
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> update user set password=password("123456") where user="root";##更新密码
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> flush privileges;##刷新权限
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
6、 用root登录
[root@web1 ~]# ps -ef |grep mysql ##显示mysql现有的进程
root 56407 1 0 17:50 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/web1.pid
mysql 56533 56407 0 17:50 pts/0 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/web1.err --pid-file=/data/mysql/web1.pid
root 56560 1737 0 17:55 pts/0 00:00:00 grep mysql
[root@web1 ~]# killall mysqld ##删除mysql现有进程
[root@web1 ~]# ps -ef |grep mysql
root 56566 1737 0 17:56 pts/0 00:00:00 grep mysql
[root@web1 ~]# service mysqld start ##重新启动mysql服务
Starting MySQL. SUCCESS!
[root@web1 ~]# mysql -uroot -p ##使用新密码登录
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.34 Source distribution
root 56407 1 0 17:50 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/web1.pid
mysql 56533 56407 0 17:50 pts/0 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/web1.err --pid-file=/data/mysql/web1.pid
root 56560 1737 0 17:55 pts/0 00:00:00 grep mysql
[root@web1 ~]# killall mysqld ##删除mysql现有进程
[root@web1 ~]# ps -ef |grep mysql
root 56566 1737 0 17:56 pts/0 00:00:00 grep mysql
[root@web1 ~]# service mysqld start ##重新启动mysql服务
Starting MySQL. SUCCESS!
[root@web1 ~]# mysql -uroot -p ##使用新密码登录
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.34 Source distribution
Copyright (c) 2000, 2016, 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.
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>
7、把刚刚添加的跳过验证信息删除,对安全有很大影响