首页 > 其他分享 >修改用户密码

修改用户密码

时间:2023-12-14 15:47:14浏览次数:33  
标签:123456 修改 用户 密码 SET MySQL PASSWORD localhost

假设你要为用户名为'username'@'localhost'的用户设置新密码,你可以这样做:

其中,username 是用户名,localhost 是主机名, 123456是要更改的新密码。

方法1: 用 ALTER 语句

ALTER USER 'username'@'localhost' IDENTIFIED BY '123456';

方法2:用 SET 语句

使用 SET 语句来修改普通用户密码,语法格式如下:

SET PASSWORD FOR 'username'@'localhost' = PASSWORD('123456');

注意:新密码要使用 PASSWORD() 函数来加密,如果不使用 PASSWORD() 加密,也会执行成功,但是用户会无法登录。

在MySQL 5.7.6及更新版本中,PASSWORD() 函数已经被弃用,可以直接设置密码字符串。

SET PASSWORD FOR 'username'@'localhost' = '123456';

使用SET语句修改 root 用户的密码可以写成这样。

SET PASSWORD = PASSWORD ('123456');

方法3:用mysqladmin

利用mysqladmin,不需要登录,可以直接修改,修改密码格式为:

mysqladmin -u用户名 -p旧密码 password 新密码(具体的参数可以按需求来使用)

mysqladmin -uroot -h localhost -p123 password 123456  -S /tmp/mysql.sock

方法4:用 UPDATE 直接编辑 user 表

可以使用 UPDATE 语句修改 MySQL 数据库的 user 表的 authentication_string 字段,从而修改普通用户的密码。UPDATA 语句的语法如下:

UPDATA mysql.user SET authentication_string=PASSWORD('123456') WHERE USER ='username' AND HOST ='localhost';

在早期版本的MySQL中,还可以用以下方法修改密码,这种方法现在不再推荐使用,因为它可能会绕过一些内置的安全机制,而且在新版本的MySQL中可能不起作用。

UPDATA mysql.user SET PASSWORD=PASSWORD('123456') WHERE USER ='username' AND HOST='localhost';

方法5:使用 GRANT 语句

除了前面介绍的方法,还可以在全局级别使用 GRANT USAGE 语句指定某个账户的密码而不影响账户当前的权限。需要注意的是,使用 GRANT 语句修改密码,必须拥有 GRANT 权限。语法格式如下:

GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY '123456';

然而,需要注意的是,从MySQL 5.7开始,使用 GRANT 语句来设置或修改用户密码已经被废弃,到了MySQL 8.0 就完全不再支持使用 GRANT 来设置密码了。

重要说明:

  • 在MySQL 5.7.6及更高版本中,不应该直接操作mysql.user表来修改密码,因为密码字段已经从Password变更为authentication_string,并且密码的哈希算法也发生了改变。直接操作系统表可能导致不可预测的行为,甚至可能损坏权限数据。

  • 从MySQL 5.7开始,建议使用ALTER USERSET PASSWORD,因为它们提供了更安全和一致的方式来管理用户密码。

总之,直接使用UPDATE语句修改用户密码虽然在某些情况下是可能的,但并不推荐这样做。始终使用官方推荐的方法来确保安全性和兼容性。如果你正在使用MySQL的较新版本,请避免直接操作系统表,并且始终遵循最佳实践,最好使用ALTER

标签:123456,修改,用户,密码,SET,MySQL,PASSWORD,localhost
From: https://www.cnblogs.com/arsxhy/p/17901289.html

相关文章

  • 编写一个程序,记录捐助给“维护合法权利团体”的资金。该程序要求用户输入捐献者数目,然
    编写一个程序,记录捐助给“维护合法权利团体”的资金。该程序要求用户输入捐献者数目,然后要求用户输入每一个捐献者的姓名和款项。这些信息被储存在一个动态分配的结构数组中。每个结构有两个成员:用来储存姓名的字符数组(或string对象)和用来存储款项的double成员。读取所有的......
  • SglServer 设置用户只能访问特定表、特定数据库
    设置用户只能访问特定表、特定数据库一、只能访问特定数据库1.【安全性】—【登录名】右击用户、打开属性,选择用户映射,勾选特定数据库 2.如果服务器角色勾选了【查看任意数据库】,那么登录后会看到所有的数据库,没有授权的数据库会提示无法访问数据库 最终效果 二......
  • 拓扑排序软件设计——ToplogicalSort_app(含有源码、需求分析、可行性分析、概要设计、
    @目录前言1.需求分析2.可行性分析2.1简介2.2技术可行性分析2.2.1技术实现方案2.2.2开发人员技能要求2.2.3可行性2.3操作可行性分析2.4结论3.项目报告3.1修订历史记录3.2软硬件环境3.3需求分析3.4详细设计3.4.1类设计3.4.2核心流程描述3.4.3核心算法设计3.5运行......
  • 修改推送代码的github账户
    原文地址: https://www.cnblogs.com/zbliao/p/14142234.html一、修改本地一个仓库的用户名和邮箱//查看本目录下仓库的邮箱gitconfiguser.email //查看本目录下仓库的用户名gitconfiguser.name//修改本目录下仓库的邮箱gitconfiguser.email"邮......
  • doris用户权限管理
    Doris用户权限和MySQL相差不多,在Doris中,GRANT命令用于赋予指定用户或角色指定的权限。使用语法如下:GRANTprivilege_listONdb_name[.tbl_name]TOuser_identity[ROLErole_name]GRANTprivilege_listONRESOURCEresource_nameTOuser_identity[ROLErole_name]pr......
  • 【Azure Key Vault】在Alteryx中使用Azure Key Vault存储账号和密码并实现无交互登录
    问题描述:需要在Alteryx中使用AzureKeyVault,Alteryx能将数据发布到Tableau,需要输入账号和密码,使用AzureKeyVault来替换这个输入账号和密码的过程,是否可以在alteryx中实现呢? 问题解答在AzureKeyVault的资料中,没有找到针对Alteryx的解决方案。但是AlteryxDataConnection......
  • 【Azure Key Vault】在Alteryx中使用Azure Key Vault存储账号和密码并实现无交互登录
    问题描述:需要在Alteryx中使用AzureKeyVault,Alteryx能将数据发布到Tableau,需要输入账号和密码,使用AzureKeyVault来替换这个输入账号和密码的过程,是否可以在alteryx中实现呢? 问题解答在AzureKeyVault的资料中,没有找到针对Alteryx的解决方案。但是AlteryxDataConnec......
  • 2023-12-13:用go语言,密码是一串长度为n的小写字母,一则关于密码的线索纸条, 首先将字母a
    2023-12-13:用go语言,密码是一串长度为n的小写字母,一则关于密码的线索纸条,首先将字母a到z编号为0到25编号,纸条上共有n个整数ai,其中a1表示密码里第一个字母的编号,若i>1的话就表示第i个字母和第i-1个字母编号的差值,例如,a2就代表密码中第1个字母和第2个字母编号的差值,若密码是acb,那么纸......
  • 2023-12-13:用go语言,密码是一串长度为n的小写字母,一则关于密码的线索纸条, 首先将字母a
    2023-12-13:用go语言,密码是一串长度为n的小写字母,一则关于密码的线索纸条,首先将字母a到z编号为0到25编号,纸条上共有n个整数ai,其中a1表示密码里第一个字母的编号,若i>1的话就表示第i个字母和第i-1个字母编号的差值,例如,a2就代表密码中第1个字母和第2个字母编号的差值,若密码是acb,......
  • [CSP-S 2023] 密码锁
    [CSP-S2023]密码锁考场上我跟个\(somebody\)一样,一看就想:一眼乘法原理,乱搞写一下就出来了。当时我还算了一下暴力好像也不会超时,结果,每天在yz日以继日的颓废考试经验,我断定CSP-S是不会考这么\(!\)复杂的题目的,结果暴力出奇迹,就是枚举模拟。考试后,一看wc枚举,我断定我......