广告
返回顶部
首页 > 资讯 > 数据库 >Mysql数据库--修改root密码的几种方法(忘记密码&知道密码)
  • 103
分享到

Mysql数据库--修改root密码的几种方法(忘记密码&知道密码)

摘要

Mysql数据库--修改root密码的几种方法(忘记密码&知道密码) 🔻一、知道密码情况--修改root密码⛳ 1.1 方式1:`alter` 命令修改⛳ 1.2 方式2:`s

Mysql数据库--修改root密码的几种方法(忘记密码&知道密码)

在这里插入图片描述

🔻一、知道密码情况–修改root密码

⛳ 1.1 方式1:alter 命令修改

  • 🍁 通过alter user root identified by '新密码';
mysql> use mysql;mysql>  alter user root@'localhost' identified by 'Zyl@123456';Query OK, 0 rows affected (0.01 sec)mysql>

⛳ 1.2 方式2:set passWord命令修改

  • 🍁 通过set password for 用户名@'用户地址' = '新密码';
mysql> use mysql;mysql> set password for 'root'@'localhost' = 'Zyl@123456';Query OK, 0 rows affected (0.01 sec)mysql> 

🔻二、忘记密码情况-修改root密码

⛳ 2.1 方式1:--init-file选项启动mysql

2.1.1 🎈 停止mysql服务

[root@db-server ~]# systemctl stop mysqld[root@db-server ~]# systemctl status mysqld● mysqld.service - MySQL Server   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)   Active: failed (Result: exit-code) since Wed 2023-06-07 11:11:00 CST; 51min aGo     Docs: man:mysqld(8)           Http://dev.mysql.com/doc/refman/en/using-systemd.html  Process: 2450 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS (code=exited, status=1/FAILURE)  Process: 2426 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS) Main PID: 2450 (code=exited, status=1/FAILURE)   Status: "Server shutdown complete"    Error: 13 (Permission denied)Jun 07 11:11:00 db-server systemd[1]: Starting MySQL Server...Jun 07 11:11:00 db-server systemd[1]: mysqld.service: main process exited, code=exited, status=1/FAILUREJun 07 11:11:00 db-server systemd[1]: Failed to start MySQL Server.Jun 07 11:11:00 db-server systemd[1]: Unit mysqld.service entered failed state.Jun 07 11:11:00 db-server systemd[1]: mysqld.service failed.[root@db-server ~]# 

2.1.2 🎈 创建mysql-init-file.txt文件

[root@db-server home]# touch init-file[root@db-server home]# vi init-file[root@db-server home]# cat init-file alter user 'root'@'localhost' identified by 'Zyl@123321';[root@db-server home]# pwd/home[root@db-server home]# 

2.1.3 🎈 init-file的权限(最好赋权一下)

[root@db-server home]# chmod 777 init-file[root@db-server home]# chown mysql:mysql init-file[root@db-server home]# lltotal 4-rwxrwxrwx 1 mysql mysql 58 Jun  7 15:56 init-file[root@db-server home]# 

2.1.3 🎈 使用–init-file选项启动mysql服务

###启动命令####mysqld --init-file=/home/init-file --user=mysql &[root@db-server ~]# mysqld --init-file=/home/init-file --user=mysql &[1] 1983[root@db-server ~]# 

2.1.4 🎈 新密码连接测试(密码:Zyl@123321)

mysql -u root -pZyl@123321
在这里插入图片描述

2.1.5 🎈停止init-file启动的mysql进程并正常启动

[root@db-server home]# ps -ef | grep mysqlmysql      1983      1  1 16:28 ?        00:00:13 mysqld --init-file=/home/init-file --user=mysqlroot       2104   2048  0 16:50 pts/1    00:00:00 systemctl start mysqldmysql      2134      1  1 16:50 ?        00:00:00 /usr/sbin/mysqldroot       2150   2048  0 16:50 pts/1    00:00:00 grep --color=auto mysql[root@db-server home]# kill -9 1983

在这里插入图片描述

####正常启动mysql###[root@db-server home]# systemctl start mysqld[root@db-server home]# systemctl status mysqld

在这里插入图片描述

2.1.5 🎈 登录之后即可在mysql命令行修改为其他常用密码(此时知道密码情况–修改root密码)

  • 🍁 通过alter user root identified by '新密码';
mysql> use mysql;mysql>  alter user root@'localhost' identified by 'Zyl@123456';Query OK, 0 rows affected (0.01 sec)mysql> mysql>
  • 🍁 通过set password for 用户名@'用户地址' = '新密码';
mysql> use mysql;mysql> set password for 'root'@'localhost' = 'Zyl@123456';Query OK, 0 rows affected (0.01 sec)mysql> 

⛳ 2.2 方式2:使用skip-grant-tables 参数,跳过授权验证

  • --skip-grant-tables:跳过授权表认证
  • --skip-networking:加了跳过授权表选项后所有的人都可以无密码登录,这是很不安全的,此选项不监听网络,防止恶意登录。

2.2.1 🎈 停止mysql服务

[root@db-server ~]# systemctl stop mysqld

在这里插入图片描述

2.2.2 🎈 通过--skip-grant-tables 参数启动mysql服务

[root@db-server ~]# sudo mysqld --skip-grant-tables --user=mysql &[1] 2531[root@db-server ~]# mysqlWelcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 7Server version: 8.0.32 MySQL CommUnity Server - GPLCopyright (c) 2000, 2023, oracle and/or its affiliates.Oracle is a reGIStered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> 

在这里插入图片描述

2.2.3 🎈 或者通过my.cnf 文件配置skip-grant-tables 参数启动mysql服务

注:修改完密码之后,去除该参数--以便保障数据库安全性

[root@db-server ~]# vi /etc/my.cnf####添加内容:skip-grant-tables

在这里插入图片描述

  • 启动mysql
[root@db-server home]# systemctl start mysqld

在这里插入图片描述

  • 🍁 通过alter user root identified by '新密码';
mysql> use mysql;mysql>  alter user root@'localhost' identified by 'Zyl@123456';Query OK, 0 rows affected (0.01 sec)mysql> mysql>
  • 🍁 通过set password for 用户名@'用户地址' = '新密码';
mysql> use mysql;mysql> set password for 'root'@'localhost' = 'Zyl@123456';Query OK, 0 rows affected (0.01 sec)mysql> 

注:修改完密码之后,去除 skip-grant-tables 参数--以便保障数据库安全性

🔻三、总结—温故知新

❓ 本篇文章详细介绍了在linux中忘记mysql的root用户密码修改步骤。❓ 温馨提示:不管是工作中,还是学习中,要养成备份的习惯,不要觉得太麻烦,或者觉得没必要,不要存在侥幸心理。❓ 人有的时候总觉得很多事可以偷懒,但是有时候又要为自己的偷懒付出更大的代价。

👈【上一篇】 💖The End💖 点点关注,收藏不迷路💖 【下一篇】👉

来源地址:https://blog.csdn.net/qq_41840843/article/details/131073027

您可能感兴趣的文档:

--结束END--

本文标题: Mysql数据库--修改root密码的几种方法(忘记密码&知道密码)

本文链接: https://www.lsjlt.com/news/403269.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作