几个月前,我在Ubuntu 18.04 上安装了 LAMP。今天,我尝试以 root 用户身份登录数据库,但我完全忘记了密码。经过一阵 Google 搜索并浏览一些文章后,我成功重置了密码。对于那些想知道如何做到这一点的人,这个简短的教程解释了如何在类 Unix 操作系统中重置 MySQL 或 MariaDB Root 密码。
首先,停止数据库。
如果你使用 MySQL,请输入以下命令并下按回车键。
$ sudo systemctl stop mysql
对于 MariaDB:
$ sudo systemctl stop mariadb
接下来,使用以下命令在没有权限检查的情况下重新启动数据库:
$ sudo mysqld_safe --skip-grant-tables &
这里, --skip-grant-tables
选项让你在没有密码和所有权限的情况下进行连接。如果使用此选项启动服务器,它还会启用 --skip-networking
选项,这用于防止其他客户端连接到数据库服务器。并且,&
符号用于在后台运行命令,因此你可以在以下步骤中输入其他命令。请注意,上述命令很危险,并且你的数据库会变得不安全。你应该只在短时间内运行此命令以重置密码。
接下来,以 root 用户身份登录 MySQL/MariaDB 服务器:
$ mysql
在 mysql > 或 MariaDB [(none)] > 提示符下,运行以下命令重置 root 用户密码:
UPDATE mysql.user SET Password=PASSWORD('NEW-PASSWORD') WHERE User='root';
使用你自己的密码替换上述命令中的 NEW-PASSWORD。
然后,输入以下命令退出 mysql 控制台。
FLUSH PRIVILEGES;
exit
***,关闭之前使用 --skip-grant-tables
选项运行的数据库。为此,运行:
$ sudo mysqladmin -u root -p shutdown
系统将要求你输入在上一步中设置的 MySQL/MariaDB 用户密码。
现在,使用以下命令正常启动 MySQL/MariaDB 服务:
$ sudo systemctl start mysql
对于 MariaDB:
$ sudo systemctl start mariadb
使用以下命令验证密码是否确实已更改:
$ mysql -u root -p
今天就是这些了。还有更多好东西。敬请期待!
前言 起源:通常在产品的运行过程,我们可能会做数据埋点,以此来知道用户触发的行...
Docker简介与安装 Docker简介 Docker的安装 卸载旧版本 使用脚本安装 启动Docker...
前言 在 Asp.Net Core 1.0 时代,由于设计上的问题, HttpClient 给开发者带来了...
文章目录 Web write_shell happysql easytp javaweb Misc 签到 InputMonitor 我...
生命周期钩子函数 Vue 实例有一个完整的生命周期也就是从开始创建、初始化数据、...
昨天查询数据库的时还正常,今早来上班时,SQL语句查询就突然变得很慢了。这样的...
想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区 https://...
怎么保证接口的幂等性 前言 首先来说下幂等性这个概念吧接口幂等性就是同一个接...
修改文件句柄 参数 /proc/sys/fs/file-max 决定了当前内核可以打开的最大的文件...
环境:eclipse+struts 要实现的效果: 点击按钮提交数据到后台之后回到前台显示...