怎样重置ubuntu mysql8密码

密码很难记住,所以如果您忘记了 MySQL root 密码,幸运的是,有一种方法可以更改它。这篇文章是为您而写的,在这篇文章结束时,您将成功更改 MySQL 的密码。

本博客演示了如何在 Ubuntu 上重置使用包管理器安装的 MySQL 和 MariaDB 数据库的root密码。更改 root 密码的过程会有所不同,具体取决于您是否安装了 MySQL 以及其他供应商的发行版或软件包附带的默认 systemd 配置。

1.检查MySQL版本

首先,检查您的 MySQL 版本,因为这篇文章包含在版本 8 或更高版本上更改 root 密码的解决方案。如果你的MySQL版本低于8,那么答案就会不同。运行以下命令:

复制代码
mysql --version

MySQL版本输出:mysql Ver 8.0.36-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

2.停止MySQL服务器

要更改MySQL root密码,首先需要关闭MySQL服务器,运行以下命令:

复制代码
sudo systemctl stop mysql.service

检查MySQL 服务器的**状态以进行验证。**运行以下命令:

bash 复制代码
sudo systemctl status mysql.service

3.跳过授权表和网络

要在不授予表和网络检查的情况下启动 MySQL 服务器,请设置MySQL 在启动时使用的环境 变量 **MYSQLD_OPTS 。**运行以下命令:

bash 复制代码
sudo systemctl set-environment MYSQLD_OPTS="--skip-networking --skip-grant-tables"

好了,环境变量设置好了,我们就可以不用密码登录MySQL shell了。

4.启动MySQL服务

设置环境变量MYSQLD_OPTS 后,启动MySQL 服务。运行以下命令:

bash 复制代码
sudo systemctl start mysql.service

确认MySQL 服务的状态(如果正在运行):

5. 登录MySQL Shell

此时我们就可以不用密码访问MySQL数据库了:

bash 复制代码
wenhua@my-dream:~$ sudo mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.36-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

6.重置root密码

现在,首先**刷新权限。**运行以下命令:

bash 复制代码
mysql> flush privileges;
bash 复制代码
mysql>  use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> ALTER USER  'root'@'localhost' IDENTIFIED BY '(YOUR NEW PASSWORD)';;
Query OK, 0 rows affected (0.01 sec)

mysql> quit;
Bye

((YOUR NEW PASSWORD)替换成新密码后退出

7.杀死所有MySQL进程并重新启动MySQL服务

首先,在重新启动 MySQL 服务器之前杀死 MySQL 的所有进程。

并重新启动 MySQL 服务器,运行以下命令:

bash 复制代码
sudo killall -u mysql

8.使用新密码登录MySQL

如果一切顺利,您现在应该能够使用 root 密码登录 MySQL 数据库:

bash 复制代码
wenhua@my-dream:~$ sudo mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.36-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
相关推荐
星恒随风6 小时前
MySQL 从零入门(五):MySQL 内置函数详解——日期、字符串、数学函数与实战案例
linux·数据库·笔记·sql·mysql
唐墨12311 小时前
linux kernel 比较数据大小的宏定义
linux·算法
程序开发阿元11 小时前
密码不进工具:一个独立开发者的服务器凭据管理办法
linux·ssh
分布式存储与RustFS14 小时前
群晖 NAS 被 C3RB3R 锁了:本地备份一起被加密,RustFS 对象锁为什么删不掉
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
真好啊又活了一天14 小时前
服务器和虚机配置IPV6
运维·服务器·github
zixu_star14 小时前
定时任务是什么?从日常自动化到 AI 应用,软件如何自动执行任务?
运维·人工智能·自动化
AR-26710-14 小时前
Linux Day33——定时任务+lvm
linux·运维
墨痕诉清风15 小时前
SSRF漏洞实战记录+OSS桶命令执行+MCP漏洞
linux·服务器·数据库
byte轻骑兵15 小时前
实战 4:BlueZ 源码中添加自定义设备过滤规则
linux·物联网·bluez·电脑蓝牙·嵌入式蓝牙
润滑卫士15 小时前
液压系统工作粘度窗口等级选型:泵允许粘度范围与油温-粘度匹配计算
运维