找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 54|回复: 1

[数据库] Linux系统下MySQL数据库的超级管理员root的密码忘记/忘记密码怎么办?

[复制链接]
  • 打卡等级:热心大叔
  • 打卡总天数:245
  • 打卡月天数:2
  • 打卡总奖励:7719
  • 最近打卡:2025-12-05 20:56:49

350

主题

557

回帖

1万

积分

管理员

积分
10407
发表于 2024-11-8 21:33:38 | 显示全部楼层 |阅读模式
当遗忘MySQL的root密码时,可以通过修改配置文件或启动参数来跳过权限检查,然后登录并修改密码。
方法一
1.添加登录跳过权限检查配置
gedit /etc/my.cnf
修改 /etc/my.cnf 文件,在 [mysqld] 配置节点添加 skip-grant-tables 配置
[mysqld]
skip-grant-tables

登录myql
mysql -uroot -p
直接回车跳过密码

删除用户、创建用户的命令:
drop user 'root'@'localhost';
# 刷新权限
flush privileges;
# 创建用户
create user 'root'@'localhost' identified by 'Root@54321';
# 给用户授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@localhost WITH GRANT OPTION;

ALTER user 'root'@'localhost' IDENTIFIED BY 'Root@54321';
--修改密码为Root@54321


请将“username”替换为你的用户名,并将“new_password”替换为你要设置的新密码。
请注意:如果你是在远程服务器上运行MySQL,则需要将“localhost”替换为远程主机的IP地址。
按Enter键执行该命令。如果没有错误,你应该会收到一个“Query OK”的消息。

最后,退出MySQL服务器并使用新密码重新登录:
exit;

特别注意:MySQL的配置文件/etc/my.cnf中配置skip-grant-tables,会导致无法远程登录数据库,所以修改好密码之后,必须将skip-grant-tables注释掉。

重新启动mysql服务
service mysqld restart

mysql -u username -p 这个命令默认登陆的是root账户,我要登陆别的账户怎么办?
mysql -u username -p 命令中的 username 是您要登录的 MySQL 用户名,不一定是 root。如果您想要登录到其他账户,只需要将命令中的 username 替换为您要登录的用户名即可。
按下 Enter 键后,系统将提示您输入密码。如果密码正确,您将登录到 MySQL 服务器并获得 mysql> 提示符。

Rocky Linux9查看mysql 端口号,成功连接后,输入以下命令查看端口号:
SHOW VARIABLES LIKE 'port';
论坛免责声明
版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。
  • 打卡等级:热心大叔
  • 打卡总天数:245
  • 打卡月天数:2
  • 打卡总奖励:7719
  • 最近打卡:2025-12-05 20:56:49

350

主题

557

回帖

1万

积分

管理员

积分
10407
 楼主| 发表于 2024-11-10 07:39:10 | 显示全部楼层
创建一个新的数据库和用户(可选):
CREATE DATABASE exampledb;
CREATE USER 'exampleuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON exampledb.* TO 'exampleuser'@'localhost';
FLUSH PRIVILEGES;


成功登录后,你可以执行各种MySQL命令来管理数据库。以下是一些常用的命令示例:
显示当前数据库列表:
show databases;
切换到指定数据库:
use 数据库名;
其中,数据库名是你要切换到的数据库名称。
显示当前数据库中的表:
show tables;
执行SQL查询语句:
select * from 表名;
其中,表名是你要查询的表名称。
插入数据到表中:
insert into 表名 (列1, 列2, 列3) values (值1, 值2, 值3);
其中,表名是你要插入数据的表名称,列1、列2、列3是表中的列名,值1、值2、值3是要插入的数据。
更新表中的数据:
update 表名 set 列名 = 新值 where 条件;
其中,表名是你要更新数据的表名称,列名是要更新的列名,新值是要更新的值,条件是更新的条件。
删除表中的数据:
delete from 表名 where 条件;
其中,表名是你要删除数据的表名称,条件是删除的条件。
4. 当你完成对数据库的操作后,可以使用以下命令退出MySQL服务器:
exit;
这些是连接MySQL数据库的基本操作命令。你可以根据具体需求使用不同的命令来管理和操作数据库。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-12-7 08:44 , Processed in 0.024382 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表