mysql如何处理用户权限过期自动失效_MySQL用户有效期管理

MySQL 8.0+用户密码过期后连接被拒绝,因authentication_string过期导致账户锁死;需用ALTER USER ... PASSWORD EXPIRE NEVER禁用策略,或设default_password_lifetime=0持久生效。MySQL 8.0+ 用户密码过期后,连接会直接被拒绝MySQL 8.0 引入了 password_expired 状态和 password_lifetime 策略,不是"权限过期",而是"账户被锁死"------用户仍存在、权限也还在,但只要 authentication_string 过期,mysql 客户端连上去就会报错:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.常见错误现象:应用突然连不上数据库,日志里反复出现 Access denied for user,但用户名密码没改过用 mysql -u xxx -p 登录时输对密码也进不去,提示要重置密码SELECT User, Host, password_last_changed, password_lifetime FROM mysql.user; 查出来某用户 password_last_changed 是很久以前,且 password_lifetime 不为 0 或 NULLALTER USER ... PASSWORD EXPIRE NEVER 关闭自动过期最常用、最直接的解法:关掉过期机制。注意这不是"延长有效期",而是彻底禁用该策略。实操建议:对已有用户执行:ALTER USER 'app_user'@'%' PASSWORD EXPIRE NEVER;新建用户时就禁用:CREATE USER 'app_user'@'%' IDENTIFIED BY 'xxx' PASSWORD EXPIRE NEVER;全局默认关闭(推荐):SET PERSIST default_password_lifetime = 0; ------ 这样后续所有新用户都不再自动启用过期别用 SET GLOBAL default_password_lifetime = 0;,重启后失效;SET PERSIST 会写入 mysqld-auto.cnf,持久生效password_lifetime = 0 和 NULL 的区别很关键MySQL 对这两个值的处理完全不同,容易踩坑: 通义听悟 阿里云通义听悟是聚焦音视频内容的工作学习AI助手,依托大模型,帮助用户记录、整理和分析音视频内容,体验用大模型做音视频笔记、整理会议记录。

相关推荐
我的xiaodoujiao16 分钟前
Django 基础知识详细图文教程 9-Django 模板引擎 2
开发语言·数据库·后端·django
蓝速科技33 分钟前
商用复杂环境翻译机耐用性选型指南丨蓝速科技
大数据·运维·数据库·人工智能·科技
2601_962885721 小时前
A股数据源和 API 怎么选?(2026 全景选型指南 + 决策树)
python
需要8261 小时前
Arthas 一个命令排查线上问题
java·jvm·spring·spring cloud
Ticnix1 小时前
别再手动上线了:一条命令带备份、健康检查和自动回滚
后端·python·ci/cd
正经教主1 小时前
【FDE系列】阶段2:Day 32:多表查询 — JOIN 与聚合
人工智能·python·fde
Ticnix1 小时前
迁移脚本能跑通,不代表你回滚得回来
后端·python
starzy19901 小时前
Flink Sliding Window 详解及代码实现:从窗口重叠到状态爆炸防控
运维·数据库·flink
我的xiaodoujiao1 小时前
Django 基础知识详细图文教程 10-Django 模板引擎 3
后端·python·测试工具·django
quantdash_cc1 小时前
量化策略为什么需要实时行情数据?从信号产生到交易决策的时间差说起
开发语言·python·数据分析·量化交易·股票数据·quantdash