首页 > 数据库 >记录一次重置数据库root用户的过程

记录一次重置数据库root用户的过程

时间:2023-03-16 22:55:08浏览次数:40  
标签:数据库 重置 报错 user mysql root localhost

服务器的mysql突然连接不上去了,密码也忘记了。只能重新设置密码了

1、使用如下指令打开mysql数据库配置文件(具体的文件路径以实际情况为准)

vim /etc/my.cnf
在虚拟机中直接输入即可
添加如下命令
skip-grant-tables
skip-networking
直接复制进文件即可,加入之后:wq退出并保存
  • skip-grant-tables 用于忽略授权表,取消数据库的授权
  • skip-networking 用于关闭数据库网络功能,避免其他用户不输入口令远程连接我们的数据库。
  • 然后重新启动MySQL服务。
2、登录数据库
mysql -uroot -proot 
输入密码123456

3、进入到mysql。然后选择mysql这个数据库
  use mysql;
看一下root还存在吗
select user,host from user;
在就更新密码
update mysql.user  set  password=password('123456')  where  user='root';
不在就重新创建用户
create user 'root'@'localhost' identified by '123456';

localhost表示本地,mysql登入的时候,不用指定ip登入


此步骤可能会报以下错误,没报错的跳过(直接到权限那一步),用一下方法解决:


ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this stateme

输入:

flush privileges;

此时再次重新创建用户:

create user 'root'@'localhost' identified by '123456';

再次报错,这步没报错的也是直接跳到赋予权限那一步,报错的以下操作:

drop user 'root'@'localhost';

再次重新创建用户:

create user 'root'@'localhost' identified by '123456';

结果没有再报错,root用户创建成功。
下面赋予root权限:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION; #赋予所有库所有表操作权限
mysql> flush privileges;
mysql> exit;

到这一步没有报错,表明已经成功了,不过要把最开始的配置文件恢复:

vim /etc/my.cnf

删除配置文件中的:

skip-grant-tables

退出,重启mysql:

/etc/init.d/mysqld restart





标签:数据库,重置,报错,user,mysql,root,localhost
From: https://www.cnblogs.com/SadicZhou/p/17224556.html

相关文章

  • 数据库连接池
    数据库连接池是个容器,负责分配、管理数据库连接。它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。释放空闲时间超过最大空闲时间的数据库连接来避免......
  • kafka重置消费位点
    kafka重置消费位点一般分几种情况重置到最新的消费位点重置到最早的消费位点根据时间戳重置消费位点跟据指定偏移量重置消费位点基于kafka2.0.0packagecom.real......
  • .net core 从数据库读取图片和保存图片到数据库
    usingMicrosoft.Data.SqlClient;usingSystem.Data;namespacePhotoApp;internalclassPhotoHelper{stringcreateTableSql=@"CREATETABLE[dbo].[Employ......
  • 通俗易懂的理解什么是数据库
    ⼀、数据库介绍(⼀)、什么是数据库数据库(database)就是存储数据的仓库。数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,每个数据库都有不同的API⽤于创......
  • Django模型(数据库)
    Django模型Django对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。Django为这些数据库提供了统一的调用API,可按需选择不同数据库。Django模型使用......
  • [[email protected]].Elbie后缀勒索软件解密|数据库恢复
    1.后缀[[email protected]].Elbie勒索软件介绍?[[email protected]].Elbie勒索软件是一种恶意软件,该勒索软件是Phobos家族的一部分。它会加密文件以使其无......
  • 20212323严文霞--数据库读书笔记一(P3-P18,P31-P33)
    1.1数据库系统概述1.1.1数据库的4个基本概念数据(data)定义:描述事物的符号记录称为数据。数据有多种表现形式,例如数字、文字、图形、图像、音视频等;数据需要进行解......
  • 数据库同步,MongoDB、ES,寻求免费的可写入型的ODBC驱动
    大家好,我们开发的数据库同步软件DBSync,能同步多种数据库,支持增量同步、异构同步。但对于NoSQL的MongoDB,Elasticsearch,一直有个问题:官方的ODBC驱动只能读数据库,不能写数据......
  • Vulnhub之Replay靶机详细测试过程(获得Root Shell)
    Replay作者:jasonhuawen靶机信息名称:Replay:1地址:https://www.vulnhub.com/entry/replay-1,278/识别目标主机IP地址(kali㉿kali)-[~/Desktop/Vulnhub/Replay]└......
  • spring boot jpa 数据库字段加密存储
     在SpringBootJPA中,可以通过自定义AttributeConverter类来实现数据库字段的加密存储。AttributeConverter是JPA2.1中引入的一个接口,用于在实体属性和数据库列......