当前位置: 首页 > news >正文

mysql重置管理员密码

mysql重置管理员密码

通用步骤(单实例 / 多实例通用)

1. 停止当前 MySQL 服务

首先确保 MySQL 实例已停止,避免端口冲突:

方式1:通过服务管理命令(适用于单实例或有服务脚本的多实例)

service mysql stop  # 单实例默认服务名
多实例可能需要指定服务名,如 
service mysql3307 stop

方式2:通过进程ID停止(适用于所有情况)

#查找MySQL进程ID
ps -ef | grep mysql | grep -v grep
终止进程(替换PID为实际进程ID)
kill -9 PID

2. 以无密码模式启动 MySQL

启动时添加 --skip-grant-tables(跳过权限验证)和 --skip-networking(禁止网络连接,增强安全性)参数:

单实例/默认安装

mysqld_safe --skip-grant-tables --skip-networking &

#多实例/自定义安装(需指定配置文件或数据目录)

mysqld_safe --defaults-file=/etc/my3307.cnf \  --skip-grant-tables \--skip-networking &

若提示 “无法启动”,可尝试指定 user、basedir、datadir 等参数(根据实际安装路径调整):

mysqld_safe --user=mysql \--basedir=/application/mysql \--datadir=/data/mysql/data \--skip-grant-tables \--skip-networking &

3. 无密码登录 MySQL

单实例/默认端口(3306)

mysql -u root

多实例/指定socket(从配置文件中找socket路径)

mysql -u root -S /data/mysql3307/mysql.sock  # 替换为实际socket路径

4. 重置 root 密码

根据 MySQL 版本执行不同命令:
MySQL 5.7 及以上版本

-- 刷新权限表(必须执行)
FLUSH PRIVILEGES;

修改密码(替换 ‘新密码’ 为你的密码,注意包含大小写、数字和特殊字符)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword@123';

MySQL 5.6 及以下版本
切换到 mysql 系统库

USE mysql;

更新密码(替换 ‘新密码’)

UPDATE user SET Password = PASSWORD('NewPassword@123') WHERE User = 'root' AND Host = 'localhost';

刷新权限

FLUSH PRIVILEGES;

5. 重启 MySQL 服务(恢复正常模式)

先停止无密码模式的实例

mysqladmin -u root shutdown  # 单实例

多实例需指定socket:

 mysqladmin -u root -S /data/mysql3307/mysql.sock shutdown

6. 正常启动服务

单实例

service mysql start  

多实例:

service mysql3307 start 或 mysqld_safe --defaults-file=/etc/my3307.cnf &

7. 验证新密码

单实例

mysql -u root -p'NewPassword@123'

多实例(指定端口或socket)

mysql -u root -p'NewPassword@123' -P 3307  # 端口

mysql -u root -p'NewPassword@123' -S /data/mysql3307/mysql.sock  # socket

注意事项

  • 安全性:–skip-grant-tables 模式下 MySQL 无需密码即可登录,操作时务必加上–skip-networking 禁止远程连接,避免被恶意访问。
  • 多实例区分:操作多实例时,必须通过 --defaults-file、-P(端口)或 -S(socket)指定目标实例,避免误改其他实例密码。
  • 密码强度:现代 MySQL 版本对密码强度有要求(如长度、复杂度),密码需包含大小写字母、数字和特殊字符(如 New@2024)。
  • 权限问题:若数据目录权限不正确,可能导致启动失败,需确保目录属主为 mysql 用户(chown -R mysql:mysql /data/mysql/data)。

通过以上步骤,即可成功重置 MySQL 管理员密码。

http://www.dtcms.com/a/403345.html

相关文章:

  • Protocol VLAN 概念及题目
  • 【ROS 学习笔记】ROS1(Noetic) ROS2(Humble)话题创建全流程梳理
  • 常州企业网站建设公司500m网站
  • 企业版的ODX为何需要制定ODX编写指南(AGL-Authoring Guidelines)
  • 27.Linux swap交换空间管理
  • 2024-WSDM-DeSCo: Towards Generalizable and Scalable Deep Subgraph Counting
  • 黄山最佳旅游攻略青岛网络优化费用
  • 人脸图像识别实战:使用 LFW 数据集对比四种机器学习模型(SVM、逻辑回归、随机森林、MLP)
  • unity+trae国际版开发环境
  • wordpress网站图片丢失网站备案找谁
  • 从编程到合规:构建安全随机数生成体系
  • 在Word中,如何引入λ γ δ α ε
  • 同步辐射X射线磁圆二色性(XMCD)测试能力和技术应用
  • 基于UML/MARTE的汽车安全关键系统设计方法
  • 新网$网站优化建筑机械人才培训网官网
  • 【Java八股文】12-分布式面试篇
  • 星环科技TDH社区版详解:从零搭建企业级大数据平台
  • 网站建设的运用场景男女做暖暖免费网站
  • APP应用接入华为推送SDK
  • 网站建设整个过程全网搜索指数
  • 安科瑞ADL200N-CT 单相户用储能表
  • 网站如何建立这么做简单的网站
  • Zabbix7.4.8(一):通过Zabbix agent 2监控postgresql相关指标
  • 实战:基于 BRPC+Etcd 打造轻量级 RPC 服务 —— 从注册到调用的完整实现
  • 企业为什么建设网站万网主机怎么上传网站吗
  • 【C++】Visual Studio+CMake 开发 C++ 入门指南:从环境搭建到项目实战
  • web3hardhat 框架实战-ERC20
  • Linux《线程同步和互斥(上)》
  • Hibernate批量操作详解及最优实践
  • 住房与建设部网站如何修改dns 快速使用境外网站