用户与权限要点
- 建用户:CREATE USER '账号'@'主机' IDENTIFIED BY '密码';
- 授权:GRANT 权限 ON 库.表 TO '账号'@'主机';
- 回收权限用 REVOKE,删用户用 DROP USER
- 刷新权限:FLUSH PRIVILEGES; 让改动立即生效
- 看当前用户:SELECT USER(); 看当前库:SELECT DATABASE();
- 授权粒度可到库、表、列,遵循最小权限原则
用户与权限示例
-- 新建一个只能读 shop_db 的账号
CREATE USER 'reader'@'%' IDENTIFIED BY 'StrongPass123';
GRANT SELECT ON shop_db.* TO 'reader'@'%';
-- 给运维账号全部权限并刷新
GRANT ALL PRIVILEGES ON shop_db.* TO 'ops'@'localhost';
FLUSH PRIVILEGES;
-- 查看当前连接身份
SELECT USER(), DATABASE();
避坑提醒:改完 GRANT 后不刷 FLUSH PRIVILEGES 也可能生效(取决于改动方式),但显式刷一遍最保险。删用户前先确认没有应用在用它,否则连接会突然全断。