创建用户并授予以特定表的SELECT权限,如GRANT SELECT ON mydb.users;2. 使用REVOKE撤销INSERT、UPDATE、DELETE等多余权限;3. 限定用户登录来源,如'localhost'或内网IP段;4. 通过SHOW GRANTS验证权限设置,确保用户仅能访问指定表。

在 MySQL 中限制用户访问特定表,主要通过权限管理来实现。你可以创建用户并授予其对某些表的有限权限,从而达到控制访问的目的。
使用 GRANT 语句为用户分配对特定数据库中特定表的操作权限,比如 SELECT、INSERT、UPDATE、DELETE 等。
例如:创建一个只能访问
mydb.users
CREATE USER 'user_read'@'localhost' IDENTIFIED BY 'password123';
GRANT SELECT ON mydb.users TO 'user_read'@'localhost';
FLUSH PRIVILEGES;
这样该用户就只能查询
users
确保用户没有被意外赋予更高权限。可以使用 REVOKE 来移除权限。
REVOKE INSERT, UPDATE, DELETE ON mydb.users FROM 'user_read'@'localhost';
如果你之前授了过多权限,及时回收是必要的安全措施。
在定义用户时,指定其登录来源(如 'user'@'localhost'),可防止从任意 IP 连接。
例如:
'user_read'@'192.168.1.%'
'user_read'@'%'
使用以下命令检查用户实际拥有的权限:
SHOW GRANTS FOR 'user_read'@'localhost';
这有助于确认权限设置是否符合预期。
基本上就这些。只要合理使用 GRANT、REVOKE 和用户主机限制,就能有效控制 MySQL 用户对表的访问。
以上就是mysql如何限制用户访问表的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号