数据库报错1045-Access denied for user ‘root‘@‘localhost‘ (using password: YES)解决方式

news2024/11/27 6:36:35

文章目录

  • 前言
  • 一、原因:
    • 1.数据库密码被篡改了!
    • 2.数据库权限变更了!
  • 二、解决方法
    • 1.方法:编辑mysql配置文件my.ini
    • 2.步骤如下:
  • 三、总结:mysql8.0版本下命令行mysqld -skip-grant-tables 失效 无法登陆问题的解决方法
  • 四、设置新密码
    • 1.进入mysql数据库:
    • 2.给root用户设置新密码:
    • 3.刷新数据库
    • 4.退出mysql:

前言

今天在用自己电脑,想使用Navicat打开MySQL数据库时,发现登陆不上并提示1045 Access denied for user ‘root’@‘localhost’ (using password: YES)。网上的答案都“千篇一律,描述的也不够简便清晰”。今天我针对这个问题给出原因解释和两个解决此问题的方法!
在这里插入图片描述

一、原因:

1.数据库密码被篡改了!

没错,就是这个原因。但是很多人会立马反驳,我自己的电脑一直用着好好的,怎么会被篡改了呢?黑客的手段厉害着呢,篡改你的数据库密码不是主要目的,目的是篡改后进入你的数据库备份数据库文件然后删除本地数据库,要挟你索要比特币才是主要目的。

在这里插入图片描述

2.数据库权限变更了!

这个原因与你机器的账户权限变更有很大的关系,实际发生场景有很多,就不举例了。

二、解决方法

1.方法:编辑mysql配置文件my.ini

在mysql的安装目录下,不同电脑可能不一样,参考目录:
①D:\Program Files\MySQL\MySQL Server 5.0\my.ini;
②C:\ProgramData\MySQL\MySQL Server 8.0\my.ini;

在[mysqld]这个条目下加入 skip-grant-tables 保存退出后重启mysql
PS:
8.0的版本不支持,亲测8.03,免得爆后面的错误:
mysql: [ERROR] unknown option ‘–skip-grant-tables’.

2.步骤如下:

1.打开cmd,点击“开始”->“运行”(快捷键Win+R)。
2.停止:输入 net stop mysql
3.启动:输入 net start mysql
4.跳过权限:输入mysqld --console --skip-grant-tables --shared-memory

在这里插入图片描述

也可以在计算机-管理-服务里面找到MySQL的服务,手动进行重启服务。如图:

在这里插入图片描述

这时候在cmd里面输入mysql -u root -p就可以不用密码登录了,出现 password:的时候直接回车可以进入,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为没有grant权限。

在这里插入图片描述

三、总结:mysql8.0版本下命令行mysqld -skip-grant-tables 失效 无法登陆问题的解决方法

1、管理员权限登陆cmd,不会使用管理员登陆的请搜索cmd,搜索结果右键。

2、命令行输入:net stop mysql;然后提示。服务停止中 --> 服务已停止,如出现其他错误请百度。

  这只是一个示例,请在服务中查看服务具体名称,比如我的就是mysql8.0.33。

  服务不会打开的请 win+R --> services.msc --> 回车,找到mysql开头的服务名。

3、由于mysqld –skip-grant-tables实测在mysql8.0中已失效,现使用mysqld --console --skip-grant-tables --shared-memory

4、另外开一个cmd,使用mysql直接无密登录。

登陆成功后,继续按下面的流程走:

四、设置新密码

1.进入mysql数据库:

mysql> use mysql;

在这里插入图片描述

2.给root用户设置新密码:

mysql> update user set authentication_string=password(“新密码”) where user=“root”;
Query OK, 1 rows affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

在这里插入图片描述

PS: 如果出现以下错误:

mysql> ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’

是因为mysql数据库下已经没有password这个字段了,按照我的步骤把password字段改成了authentication_string

3.刷新数据库

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

在这里插入图片描述

4.退出mysql:

mysql> quit;
Bye

在这里插入图片描述

改好之后,保存退出再重启mysql服务,再重新用Navicat连接就可以了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/844356.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode150道面试经典题-删除有序数组中的重复项(简单)

1.题目 给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元素的数量为 k &#xff0c…

AI 绘画Stable Diffusion 研究(六)sd提示词插件

大家好,我是风雨无阻。 今天为大家推荐一款可以有效提升我们使用 Stable Diffusion WebUI 效率的插件, 它就是 prompt-all-in-one, 它不但能直接将 WebUI 中的中文提示词转换为英文,还能一键为关键词加权重,更能建立常…

web系统测试思路

一、输入框 1、字符型输入框: (1)字符型输入框:英文全角、英文半角、数字、空或者空格、特殊字符“~!#¥%……&*?[]{}”特别要注意单引号和&符号。禁止直接输入特殊字符时,…

Python高阶技巧 多线程

进程、线程和并行执行 进程、线程 现代操作系统比如Mac OS X,UNIX,Linux,Windows等,都是支持“多任务”的操作系统。 进程: 就是一个程序,运行在系统之上,那么便称之这个程序为一个运行进程&…

Java课题笔记~ AspectJ 对 AOP 的实现(掌握)

AspectJ 对 AOP 的实现(掌握) 对于 AOP 这种编程思想,很多框架都进行了实现。Spring 就是其中之一,可以完成面向切面编程。然而,AspectJ 也实现了 AOP 的功能,且其实现方式更为简捷,使用更为方便,而且还支…

【0807作业】使用消息队列实现AB进程对话+使用共享内存实现A进程打印字符串,B进程逆置字符串,打印结果为【正序 逆序 正序 逆序】

作业一:使用消息队列实现AB进程对话 ① 打开两个终端,要求实现AB进程对话 A进程先发送一句话给B进程,B进程接收后打印B进程再回复一句话给A进程,A进程接收后打印重复1.2步骤,当收到quit后,要结束AB进程 ② …

HCIA---OSI/RM--开放式系统互联参考模型

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 目录 一.OSI--开放式系统互联参考模型简介 1.OSI七层参考模型: HTTP请求工作过程: 二.OSI参考模型详解 链路层: 网络层&#…

【Java+springboot】基于物联网技术的粮油质量管控防伪溯源管理系统源码

基于物联网技术、RFID技术和RSA、PGP加密算法开发的粮油质量管控防伪追溯系统 一、概述 粮油安全关系千千万万消费者的健康问题。近年来,许多食品行业安全事故频频涌现,成为社会关注焦点。粮油生产加工质量管控防伪溯源系统为粮油提供从种植、生产、加工…

Godot 4 源码分析 - 文件读入编码处理

今天需要读入xml文件进行处理,结果读入一个带中文的文件时,出错了。当然程序还能运行,但编译器一直报错,而且XML解析也不正确 单步调试发现读入的内容出现乱码,具体逻辑: String FileAccess::get_as_text…

CAPL - XML和TestModule结合实现测试项可选

目录 目的:是否想实现如下面的功能呢? 一、.can和.cin文件中函数开发

Git工具安装

Git 工具安装 1. 下载Git安装包2. 安装Git工具3. 简单的使用配置用户名 1. 下载Git安装包 打开官网 https://git-scm.com/downloads点击下载 2. 安装Git工具 右击以管理员身份运行 ![在这里插入图片描述](https://img-blog.csdnimg.cn/9a99a73d54824800bc87db64f71f7602.png…

Selenium自动化测试总结

一、Selenium自动化测试(基于python) 1、Selenium简介: 1.1 Selenium是一款主要用于Web应用程序自动化测试的工具集合。Selenium测试直接运行在浏览器中,本质是通过驱动浏览器,模拟浏览器的操作,比如跳转、…

6.4.3 1x1卷积层

特点:1x1卷积层相当于全连接层 作用:1x1卷积用于调整网络层的通道数量和控制模型复杂度 输入形状:(通道,行,列) (3,3,3) 卷积核形状:(输出通道,输入通道,行,列) (2,3,…

SAP ABAP程序性能优化-养成良好的代码习惯

ABAP程序基本上都需要从数据库里面抓数,所以性能很重要,同时有一些基本的,和优秀的写法是我们必须要掌握的,不然就会造成程序性能很差。下面给予总结(这里包括有很基本的,也包括有比较少用到的)…

python——案例六:判断字符串的长度

案例六:判断字符串的长度str"Study"print(len(str))#输出结果如下: #5

春秋云镜 CVE-2020-25540

春秋云镜 CVE-2020-25540 Thinkadmin v6任意文件读取漏洞 靶标介绍 ThinkAdmin 6版本存在路径查找漏洞,可利用该漏洞通过GET请求编码参数任意读取远程服务器上的文件。 启动场景 漏洞利用 1、未授权列目录poc 读取网站根目录Payload: http://think.admin/Think…

基于Vgg16和Vgg19深度学习网络的步态识别系统matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022A 3.部分核心程序 ................................................................ % 设置训练选项options …

用Python获取链家二手房房源数据,做可视化图分析数据

前言 数据采集的步骤是固定: 发送请求, 模拟浏览器对于url地址发送请求获取数据, 获取网页数据内容 --> 请求那个链接地址, 返回服务器响应数据解析数据, 提取我们需要的数据内容保存数据, 保存本地文件 所需模块 win R 输入cmd 输入安装命令 pip install 模块名 (如果你…

js2-js中的数据结构

1、什么是数据结构 数据结构是计算机存储、组织数据的方式。 数据结构意味着接口或封装,一个数据结构可被视为两个函数之间的接口,或者是由数据类型联合组成的存储内容的访问方法封装。 每天的编码中都会用到数据结构,其中数组是最简单的内存…