首页 > 自考资讯 > 自考知识

Mysql重置root密码

头条共创 2024-08-11

一、mysql 查看当前版本

1、命令行登录后查看: 登录到MySQL服务器后,执行以下命令:

SELECT VERSION();

2、仅在命令行查看而不登录

mysql --version mysql -V

3、版本解释 Ver 14.14 Distrib 5.7.44, for Linux (x86_64) using EditLine wrapper

Ver: 这是版本(Version)的简写,指的是MySQL服务器的版本。14.14: 这是MySQL服务器的具体版本号。在这里,14.14 可能是指开发系列版本,例如 5.7.14。Distrib: 这个词是“Distribution”的缩写,意味着这是一个分发版,通常是由第三方编译的,用于特定的操作系统和平台。5.7.44: 这是MySQL数据库管理系统的主要版本号,表明这是5.7系列的第44次更新或补丁。for Linux (x86_64): 这指定了MySQL服务器被编译和设计运行的操作系统和处理器架构。在这个例子中,它被编译为在Linux操作系统上运行,并且适用于x86_64(即64位)的处理器架构。using EditLine wrapper: EditLine是一个为读取、编辑和缓存输入而设计的库,通常用于实现命令行编辑功能,比如命令历史的记录和编辑。using EditLine wrapper 表示MySQL服务器使用了EditLine库作为其命令行编辑接口。

二、不记得mysqlroot密码重置MySQL的root密码

1、停止MySQL服务。

service mysql stop

2、启动MySQL服务,跳过授权表。

(1)第一种方法 : 命令行修改 启动

mysqld_safe --skip-grant-tables &

(2)第二种方法 :修改配置文件再启动

find / -name my.cnfvim /etc/my.cnf[client]port = 3306socket = /tmp/mysql.sock[mysql]prompt="MySQL [\d]> "no-auto-rehash[mysqld]port = 3306socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /data/mysqlpid-file = /data/mysql/mysql.piduser = mysqlbind-address = 0.0.0.0server-id = 1# mysqld 模块下添加此行 ,改密码生效后重新注释掉再启动skip-grant-tables

3、登录修改密码

mysql -u root

USE mysql;UPDATE user SET Password=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES;quit;

或者

USE mysql;UPDATE user SET authentication_string = password('新密码') WHERE User = 'root';FLUSH PRIVILEGES;quit;

例如:密码为 abc@123

UPDATE USER SET AUTHENTICATION_STRING = PASSWORD('abc@123') WHERE USER = 'ROOT';

MySQL 5.7及之前版本: UPDATE user SET Password=PASSWORD(‘你的新密码’) WHERE USER=’root’;

MySQL 8.0及之后版本: UPDATE user SET authentication_string = password(‘新密码’) WHERE User = ‘root’;

MySQL 8.0移除了 password 字段,取而代之的是 authentication_string 字段。

4、删除或注释掉my.cnf中的skip-grant-tables。

[mysqld]port = 3306socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /data/mysqlpid-file = /data/mysql/mysql.piduser = mysqlbind-address = 0.0.0.0server-id = 1# mysqld 模块下添加此行 ,改密码生效后重新注释掉再启动#skip-grant-tables

5、重启MySQL服务:

/etc/init.d/mysqld restart

6、使用新密码登录

mysql -uroot -p

三、记得mysqlroot密码可以登陆重置MySQL的root密码

知道 密码 :

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

SET PASSWORD for 'root'@'%' = password('新密码');

或 有些情况下需要顺带修改plugin认证方式,可用以下写法

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '新密码';

四、使用bin目录下mysqladmin

写法1:

mysqladmin -u root -p password 新密码;

回车后输入旧密码,再回车即可

写法2:

mysqladmin -uroot -p原密码 password 新密码;

密码会暴露在history命令上
此命令直接修改root密码

mysqladmin -u root password 新密码;

版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除

猜你喜欢