创建用户必须明确指定 host 而非使用 '%',生产环境应限定为内网或 localhost;授予权限需遵循最小原则,仅赋予 SELECT/INSERT/UPDATE/DELETE 等必要权限;MySQL 8.0+ 应启用 validate_password 插件并设为 MEDIUM 或 STRONG 策略;须定期审计并清理残留账户。创建用户时必须指定 host 而非用 % 通配直接用 CREATE USER 'user'@'%' 是最常见也最危险的做法------它允许该用户从任意 IP 连接,哪怕你只打算在本地用。生产环境应明确限定来源,比如只允许内网访问:CREATE USER 'app_user'@'192.168.1.%',或仅本机:'app_user'@'localhost'。注意:localhost 和 127.0.0.1 在 MySQL 中行为不同(前者走 Unix socket,后者走 TCP),权限记录不互通,别混用。授予权限时避免使用 GRANT ALL PRIVILEGESGRANT ALL PRIVILEGES ON db.* TO 'user'@'host' 会赋予包括 DROP DATABASE、CREATE USER、SHUTDOWN 等高危权限,远超应用所需。应按最小权限原则显式授予:SELECT, INSERT, UPDATE, DELETE ------ 基础 DML 操作EXECUTE ------ 仅当需调用存储过程时添加SHOW VIEW ------ 仅当查询视图时需要绝对不要给 FILE、PROCESS、SUPER 权限,除非 DBA 明确介入运维场景执行后务必运行 FLUSH PRIVILEGES(虽然多数情况下自动刷新,但显式调用更稳妥)。密码策略与强密码强制生效MySQL 8.0+ 默认启用 validate_password 插件,但需确认已加载并配置强度: 文心快码 文心快码(Comate)是百度推出的一款AI辅助编程工具
相关推荐
92year1 小时前
用Google ADK从零搭一个能调工具的AI Agent:Python实操全过程woxihuan1234561 小时前
SQL删除数据时存在依赖关系_设置外键级联删除ON DELETE东风破1371 小时前
DM8达梦共享存储集群DSC搭建步骤雪碧聊技术2 小时前
当数据库字段数大于Java实体类属性数时,MyBatis还能映射成功吗?一文详解Jetev2 小时前
如何确定SQL字段是否为空_使用IS NULL与IS NOT NULL蛐蛐蛐2 小时前
昇腾910B4上安装新版本CANN的正确流程m0_702036532 小时前
mysql如何处理不走索引的OR查询_使用UNION ALL优化重写代钦塔拉2 小时前
Qt4 vs Qt5 带参数信号槽的连接方式详解2401_846339562 小时前
MySQL在云环境如何选择存储类型_SSD与高性能云盘配置建议2601_957780843 小时前
Claude 4.6 对阵 GPT-5.4:2026 开发者大模型 API 选型深度解析