MySQL 登录报错 ERROR 1045:Access denied for user ‘root‘@‘localhost‘(using password: YES

目录

  1. 问题描述
  2. 错误原因解析
  3. 多种解决方案
    • 方案一:重设 root 密码
    • 方案二:检查并修正用户权限
    • 方案三:修改配置文件启动选项
  4. 总结
  5. 附加建议

1. 问题描述

在使用 MySQL 时,经常会遇到以下报错:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 

即 root 用户从 localhost 登陆时被拒绝访问。本文将分析该问题的可能原因,并给出几种常用解决方案。


2. 错误原因解析

导致 ERROR 1045 报错的常见原因包括:

  • MySQL 服务未启动或停止响应。
  • 使用了错误的用户名/密码组合。
  • 用户被限制从当前 IP 或 主机登录。
  • my.cnf / my.ini 配置文件中有禁止登录的项。
  • 数据库权限设置有误, root 用户缺少必要登录权限。

3. 多种解决方案

🧩 方案一:重设 root 用户密码(适用于忘记密码或登录失败)

步骤1: 停止 MySQL 服务

  • 在 Windows 系统:通过服务管理器停止 MySQL 服务。

在 Linux 系统:

sudo systemctl stop mysql 

步骤2: 启动 MySQL 跳过权限验证

或者编辑 my.cnf 或 my.ini,在 [mysqld] 下添加:

skip-grant-tables 

然后重启服务。

在 Linux 上执行:

sudo mysqld_safe --skip-grant-tables &

步骤3: 无密码模式连接

mysql -u root 

步骤4: 修改 root 密码并刷新权限

use mysql;updateuserset authentication_string = password('新密码')whereuser='root'; flush privileges;

步骤5: 重启 MySQL 服务并使用新密码登录。


🧩 方案二:检查并修正 root 用户权限

执行以下 SQL 查看当前 root 用户权限:

SHOW GRANTS FOR'root'@'localhost';

如果权限设置不正确,可执行:

GRANTALLPRIVILEGESON*.*TO'root'@'localhost'WITHGRANTOPTION; FLUSH PRIVILEGES;

确保 root 用户拥有从 localhost 登录的权限及执行权限。


🧩 方案三:修改配置文件中的登录限制项

检查配置文件(如 /etc/mysql/my.cnf 或 Windows 的 my.ini )中以下内容:

[mysqld] skip-grant-tables 

若添加这项,则 MySQL 会跳过权限校验启动,适用于紧急修复,但长期不建议开启。完成修改后,再次重设密码并移除该项。


4. 核心总结

  • ERROR 1045 通常是 用户名/密码错误、权限不足或配置阻止登录导致。
  • 重设密码、修正权限、或临时跳过权限验证是主要解决思路。
  • 滥用 skip-grant-tables 虽可临时修复但存在安全隐患,仅建议应急使用。

5. 附加建议

  • 定期为 root 用户更换强密码,并避免使用 root 在生产环境中直接登录。
  • 建议为每个应用或服务创建专用用户并授权,最小化权限原则。
  • 将数据库服务绑定到特定 IP 或网络,禁止 root 从 localhost 以外登录可提升安全。
  • 发生产环境时禁用 skip-grant-tables 模式并恢复权限表。

Read more

安卓手机安装Termux+AstrBot+NapCat搭建QQ个人机器人【非官方】(简易版)

安卓手机安装Termux+AstrBot+NapCat搭建QQ个人机器人【非官方】(简易版)

前言        好久不见,亲爱的友友们,这次我来了!这次我学会了用旧安卓手机安装termux软件搭建了一个AstrBotQQ机器人(大模型可能跑不了),我使用的旧安卓手机是vivoY31s标准版,手机型号有点久,到时能用就行了。其实方法都通用差不多。 目录 目录 前言 目录 一、简介 1.Termux 2.AstrBot 3.NapCat  二、步骤 1. 安装Termux 2. 更新系统包打开 Termux,依次执行以下命令,更新软件源并安装基础工具。 换源 (可选) 3. 申请存储权限 正式部署 安装 proot-distro 及 其他必须组件 登录 Ubuntu环境 添加第三方PPA 安装 Python 克隆 AstrBot 仓库 运行 AstrBot

By Ne0inhk
Ubuntu搭建PX4无人机仿真环境(5) —— 仿真环境搭建(以Ubuntu 22.04,ROS2 Humble,Micro XRCE-DDS Agent为例)

Ubuntu搭建PX4无人机仿真环境(5) —— 仿真环境搭建(以Ubuntu 22.04,ROS2 Humble,Micro XRCE-DDS Agent为例)

目录 * 前言 * 1. 准备 * 1.1 下载 PX4 源码 * 方式一: * 方式二: * 1.2 安装仿真依赖 * 1.3 安装 Gazebo * 2. 安装 Micro XRCE-DDS Agent * 3. 编译 PX4 * 4. 通信测试 * 5. 官方 offboard 程序 * 6. offboard 测试 * 参考 前言 本教程基于 ROS2 ,在搭建之前,需要把 ROS2、QGC 等基础环境安装配置完成。但是这块的资料相比较于 ROS1 下的少很多,不利于快速上手和后期开发,小白慎选! 小白必看:

By Ne0inhk
(11-4-01)完整人形机器人的设计与实现案例:机器人的站立与行走

(11-4-01)完整人形机器人的设计与实现案例:机器人的站立与行走

11.5  运动控制算法 “OpenLoong-Dyn-Control”项目提供了一套基于MPC(模型预测控制)和WBC(全身体控制)的仿人机器人运动控制框架,可以部署在Mujoco仿真平台上。该项目基于上海人形机器人创新中心的青龙”机器人模型,提供了行走、跳跃、盲踩障碍物等运动示例,且实物样机已实现行走和盲踩障碍功能。其具有易部署(包含主要依赖,简化环境配置)、可扩展(分层模块化设计,便于二次开发)、易理解(代码结构简洁,采用“读取-计算-写入”逻辑)等特点。 11.5.1  机器人的站立与行走 文件OpenLoong-Dyn-Control/demo/walk_wbc.cpp是基于MuJoCo的双足机器人仿真控制程序,实现机器人从站立到行走的过程。加载模型并初始化UI控制器、动力学求解器、WBC优先级控制器、步态调度器等模块,通过仿真循环推进时间步。循环中更新传感器数据与机器人状态,经状态估计、运动学动力学计算后,由WBC求解关节控制量,结合PVT控制生成力矩指令。还包含足端放置规划、期望速度生成,

By Ne0inhk
基于FPGA调制信号模型仿真设计关键词MATLAB;Simulink

基于FPGA调制信号模型仿真设计关键词MATLAB;Simulink

基于FPGA调制信号模型的MATLAB/Simulink仿真设计 第一章 绪论 FPGA凭借并行运算能力强、实时性高、可硬件编程的特性,成为通信系统中调制信号生成与处理的核心硬件平台,但FPGA硬件开发周期长、调试成本高,直接进行硬件实现易出现逻辑错误或性能不达标问题。MATLAB/Simulink具备强大的建模与仿真能力,可在FPGA硬件开发前完成调制信号模型的功能验证与性能分析,显著降低开发风险。本研究基于MATLAB/Simulink搭建FPGA调制信号模型仿真系统,核心目标是实现ASK、FSK、PSK等典型调制信号的建模、FPGA逻辑行为仿真及性能评估,仿真系统需具备逻辑可综合、参数可配置、性能可量化的特性,解决FPGA调制信号开发中硬件调试效率低、成本高的痛点,为FPGA硬件实现提供精准的仿真验证依据,符合通信系统数字化、硬件化的发展趋势。 第二章 仿真设计原理与核心架构 本仿真系统核心架构围绕“信号源模块-FPGA逻辑行为仿真模块-调制解调模块-性能分析模块”四大模块构建,基于MATLAB/Simulink与HDL Coder工具链实现全流程仿真。信号源模块生成

By Ne0inhk