浏览 2305 次
锁定老帖子 主题:MySql的用户以及权限
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-10-14
最后修改:2011-06-18
为了唯一确定一个用户,用户=user+host+password. user不指定的话,为匿名用户。 hostname可以用%匹配所有host. 其中,password可以不设置,但是从安全的角度想,所有的user还是设置一个密码比较好。 权限 MySql中所有的操作都有对应的权限,权限存储在mysql数据库中,系统用作检查的ACL是在server启动时载入内存的。 权限检查过程 1 连接时对用户检查。 主要是检查该用户是否可以连接server。 有可能有多个现有条目和用户匹配,系统会对现有条目排序后采用第一个匹配的用户。 排序的规则为先Host,后User,其中,指定的host比通用的%靠前,指定的user比匿名用户靠前。 如 +-----------+----------+- | Host | User | ... +-----------+----------+- | % | root | ... | % | jeffrey | ... | localhost | root | ... | localhost | | ... +-----------+----------+- 排好后为 +-----------+----------+- | Host | User | ... +-----------+----------+- | localhost | root | ... | localhost | | ... | % | jeffrey | ... | % | root | ... +-----------+----------+- 2 操作时对操作的用户权限进行检查 server分析请求的操作,检查ACL。 权限何时生效 系统用作检查的ACL是在server启动时载入内存的。 1 用GRANT, REVOKE等命令修改后内存也被影响。 2 直接修改底层的mysql里面和权限相关的表,内存的ACL不受影响,可以用FLUSH PRIVILEGES重新载入。 有用的命令 查看权限 SHOW GRANTS FOR user@host ; 新增用户 CREATE USER 设置密码 SET PASSWORD 设置权限 GRANT 取消权限 REVOKE 查看当前用户 SELECT CURRENT_USER(); 重新载入权限 FLUSH PRIVILEGES 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |