MySQL密码修改的全部方式一篇详解

打印 上一主题 下一主题

主题 910|帖子 910|积分 2730

        本文将详细介绍多种修改MySQL密码的方式。

  
一、alter user 语句

当你以 root 用户大概拥有足够权限的用户登录 MySQL 时,可以利用 ALTER USER 语句来修改密码。这种方式适用于 MySQL 5.7 及以上版本,简朴直接,且符合 MySQL 的标准操纵规范。
操纵步调


  • 首先,利用以下下令登录 MySQL:
  1. mysql -u root
  2. -p
复制代码
输入密码后乐成登录到 MySQL 下令行界面。

  • 接着,利用 ALTER USER 语句修改密码。假设要将用户 myuser 的密码修改为 myuser,可以执行以下 SQL 语句:
  1. ALTER USER 'myuser'@'localhost' IDENTIFIED BY 'myuser';
复制代码
这里的 'myuser'@'localhost' 表现要修改的是本地登录的 myuser 用户的密码。假如用户可以从任何主机登录,可以利用 'myuser'@'%'。

  • 修改完成后,为了让新密码立刻见效,必要革新权限:
  1. FLUSH PRIVILEGES;
复制代码



二、set password

SET PASSWORD 语句同样适用于在 MySQL 下令行中修改密码。它在 MySQL 各个版本中都能利用,假如习惯利用 SQL 语句进行操纵,这是一个不错的选择。
操纵步调


  • 同样先登录到 MySQL 下令行:
  1. mysql -u root
  2. -p
复制代码

  • 然后利用 SET PASSWORD 语句修改密码。假如要修改当前登录用户的密码,可以执行以下语句:
  1. SET PASSWORD = PASSWORD('12345678');
复制代码
假如要修改其他用户的密码,例如 testuser 的密码,可以执行:
  1. SET PASSWORD FOR 'testuser'@'localhost' = PASSWORD('newpassword');
复制代码

  • 最后革新权限:
  1. FLUSH PRIVILEGES;
复制代码
  对于较新的 MySQL 版本,ALTER USER 语句更为推荐,SET PASSWORD 相对来说不够规范。
  


三、直接修改 mysql.user表

当忘记了 MySQL 的 root 密码,大概无法通过正常方式登录 MySQL 时,可以利用这种方式。但这种方式操纵相对复杂,必要审慎利用。
操纵步调


  • 制止 MySQL 服务:
  1. sudo systemctl stop mysql
复制代码

  • 以跳过权限查抄的方式启动 MySQL:
  1. sudo mysqld_safe --skip-grant-tables &
复制代码

  • 登录到 MySQL 下令行:
  1. mysql -u root
复制代码

  • 切换到 mysql 数据库:
  1. USE mysql;
复制代码

  • 利用 UPDATE 语句修改密码。假设要修改 root 用户的密码,可以执行:
  1. UPDATE user SET authentication_string = PASSWORD('newpassword') WHERE User = 'root';
复制代码
在 MySQL 5.7 及以上版本中,密码字段为 authentication_string;在早期版本中,大概为 Password。

  • 革新权限:
  1. FLUSH PRIVILEGES;
复制代码

  • 制止 MySQL 服务:
  1. sudo systemctl stop mysql
复制代码

  • 以正常方式启动 MySQL 服务:
  1. sudo systemctl start mysql
复制代码



  ← 上一篇 Java进阶——常用类及常用方法详解              记得点赞、关注、收藏哦!        下一篇 Java进阶——数组超详细整理 →  

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张国伟

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表