Debian或Ubuntu系统中重置MySQL的root密码

你提供的步骤是针对在Debian或Ubuntu系统中重置MySQL的root密码的过程。以下是对你提供的步骤的详细说明和补充:

步骤 1.1 - 1.3:进入MySQL配置目录并使用debian-sys-maint账户登录MySQL

bash 复制代码
# 进入MySQL配置目录
cd /etc/mysql/
# 使用vim编辑器打开debian.cnf文件
sudo vim debian.cnf
# 使用文件中提供的debian-sys-maint用户和密码登录MySQL
mysql -u debian-sys-maint -pTA1el67hkuO04Nrn

步骤 1.4:选择mysql数据库

sql 复制代码
use mysql;

步骤 1.5:显示user表中的列

sql 复制代码
show fields from user;

这将列出user表的所有列,其中authentication_string列用于存储加密后的密码。

步骤 1.6:修改密码

在你提供的命令中,password()函数已经被弃用,并且在MySQL 8.0中已被移除。因此,如果你使用的是MySQL 5.7.6或更高版本,你应该使用以下命令来更新root用户的密码:

sql 复制代码
-- 对于MySQL 5.7.6及以上版本
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

如果你确实需要使用update语句来更改密码(例如,在无法使用ALTER USER命令的情况下),你应该使用以下命令:

sql 复制代码
-- 对于MySQL 5.7及以下版本
UPDATE mysql.user 
SET authentication_string = PASSWORD('123456') 
WHERE User = 'root' AND Host = 'localhost';

注意:在执行上述UPDATE语句后,你需要执行以下命令来刷新权限:

sql 复制代码
FLUSH PRIVILEGES;

然后退出MySQL并重启MySQL服务以使更改生效:

bash 复制代码
sudo systemctl restart mysql

请确保在执行这些操作时,你使用的命令与你的MySQL版本相匹配。如果你的MySQL版本是8.0或更高,不应该使用PASSWORD()函数。

相关推荐
Java成神之路-13 分钟前
面试题:堆表 vs 索引组织表:区别、场景
mysql
Irene199126 分钟前
两种 Linux 发行版:Ubuntu 与 CentOS Shell 环境核心差异对比(查看 Linux 版本,Hadoop 是什么)
linux·ubuntu·centos
gjc59230 分钟前
Linux MySQL服务器SSH多端口配置:解决22端口禁直连,兼顾安全与运维
linux·运维·服务器·mysql·ssh
largecode39 分钟前
怎么让手机显示公司名?来电显示公司名称认证实现品牌外显
linux·ubuntu·华为od·华为·智能手机·华为云·harmonyos
fengxin_rou1 小时前
MySQL 索引高频面试题全解析:B + 树、联合索引、索引失效
后端·mysql
重生之小比特1 小时前
【MySQL 数据库】视图
数据库·mysql
Languorous.1 小时前
MySQL 零基础安装教程(Windows11/10,图文分步,新手零失败)
数据库·mysql·adb
济6171 小时前
ROS开发专栏---ROS2humble安装详细教程---适配Ubuntu 22.04
ubuntu·ros2·ros2 humble·机器人开发
不断高歌1 小时前
MySQL基础随堂笔记4
笔记·mysql
牛马鸡niumasi1 小时前
Mysql:索引与B+树
mysql