MySQL 8.0+ 怎么让密码 90 天自动过期直接改系统变量 default_password_lifetime 就行,它控制所有新用户的默认过期天数。设为 90,新创建的用户密码就 90 天后强制重置。注意:这个变量只影响「后续新建的用户」,对已有用户不生效。想批量改老用户,得单独执行 ALTER USER。全局设置(重启后仍生效):SET PERSIST default_password_lifetime = 90;临时设置(重启失效):SET GLOBAL default_password_lifetime = 90;查看当前值:SELECT @@global.default_password_lifetime;已有用户怎么单独设置密码过期时间用 ALTER USER 显式指定,比依赖全局变量更可控。比如让运维账号必须 30 天换一次:ALTER USER 'admin'@'%' PASSWORD EXPIRE INTERVAL 30 DAY;永久不过期:ALTER USER 'backup'@'localhost' PASSWORD EXPIRE NEVER;立即过期(下次登录强制改):ALTER USER 'temp'@'%' PASSWORD EXPIRE;错误现象:如果误写成 PASSWORD EXPIRE DEFAULT,会继承 default_password_lifetime 的值,而不是"不过期"------这是常见误解点。密码过期后用户还能不能连上 MySQL能连上,但只能执行有限命令:仅 SET、UNLOCK TABLES、SELECT(只读),以及 ALTER USER ... IDENTIFIED BY 这类改密操作。其他任何 DML 或 DDL 都报错:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. Shakespeare 一款人工智能文案软件,能够创建几乎任何类型的文案。
相关推荐
wuminyu3 小时前
JVM规范学习总结:解释器与JIT编译器如何处理JVM字节码ss2733 小时前
PostgreSQL常见索引问题与解决方案小徐不徐说3 小时前
序列化与反序列化:把 C++ 对象可靠地保存下来ragnwang3 小时前
Notes: Python pybind11 import C++ module王中阳Go3 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径骑着蜗牛撵大象3273 小时前
大模型 Agent 的沙箱护栏:gVisor 隔离、出口白名单与审计闭环weixin_307779134 小时前
RAG 面试陷阱——混合检索并非无条件优越:一个条件反转实验瀚高PG实验室5 小时前
发布端逻辑复制槽消失云和数据.ChenGuang5 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现ss2735 小时前
PostgreSQL慢查询定位与优化