Centos7 中安装mysql后,重置root密码的方式

Centos7 中安装mysql后,重置root密码的方式,第1张

1.修改MySQL的登录设置:

# vim /etc/my.cnf

在[ mysqld ]的段中加上一句: skip-grant-tables

例如:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-grant-tables

保存并且退出vi。

2.重新启动mysqld

# service mysqld restart

Stopping MySQL: [ OK ]

Starting MySQL: [ OK ]

3.登录并修改MySQL的root密码

# mysql

Welcome to the MySQL monitor. Commands end with or \g.

Your MySQL connection id is 3 to server version: 3.23.56

Type 'help' or '\h' for help. Type '\c' to clear the buffer.

mysql> USE mysql

Database changed

mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root'

Query OK, 0 rows affected (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 0

mysql> flush privileges

Query OK, 0 rows affected (0.01 sec)

mysql> quit

4.将MySQL的登录设置修改回来

# vim /etc/my.cnf

将刚才在[mysqld]的段中加上的skip-grant-tables删除

保存并且退出vim

5.重新启动mysqld

# service mysqld restart

Stopping MySQL: [ OK ]

Starting MySQL: [ OK ]

安装好mysql后,找到 /var/log 目录,打开 mysqld.log 文件,找到有password的地方,可以看到root账户的密码

cat /var/log/mysqld.log | grep password

使用该密码,可以登录root账户

如:

[mysqld]

skip-grant-tables

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

service mysql restart

mysql -uroot -p (直接点击回车,密码为空)

use mysql

mysql>update user set password=password("*******") where user="*******" #修改密码报错

ERROR 1054 (42S22): Unknown column 'password' in 'field list'

mysql>update mysql.user set authentication_string=password('*******') where user='*******' #修改密码成功

Query OK, 1 row affected, 1 warning (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 1

mysql>flush privileges #立即生效

Query OK, 0 rows affected (0.00 sec)

Stopping MySQL: [ OK ]

Starting MySQL: [ OK ]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7767290.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存