MySQL创建用户且只能访问指定数据库表

22 阅读1分钟

1.创建用户 testUser

-- testUser:用户名  %:表示所有机器(允许连接的主机地址)
CREATE USER 'testUser'@'%' IDENTIFIED BY '123456';
主机值含义示例
'%'任意主机都可以连接从任何 IP 地址都能登录
'localhost'仅本地可以连接只能在本机登录
'192.168.1.100'仅指定 IP 可以连接只能从 192.168.1.100 登录
'192.168.1.%'IP 段可以连接192.168.1.0/24 网段都能登录
'%.example.com'域名可以连接所有 example.com 域下的主机

2.给此用户分配 task 表的 select 权限

-- 授权时的主机值必须与创建时的一致,否则授权会失败或创建新的用户记录
GRANT SELECT ON `dbtest`.task TO 'testUser'@'%';

3.刷新

FLUSH PRIVILEGES;