MYSQL笔记 之 用户权限管理

本文详细介绍MySQL用户权限管理的核心概念,包括用户权限的作用、账号存储位置、root账号特性、查询及创建用户的方法,以及如何修改密码、删除用户、授权和撤销权限。通过具体示例,帮助读者掌握MySQL权限管理的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户权限管理主要有以下作用:

可以限制用户访问哪些库、哪些表
可以限制用户对哪些表执行SELECT、CREATE、DELETE、DELETE、ALTER等操作
可以限制用户登录的IP或域名
以限制用户自己的权限是否可以授权给别的用户
账号存储在:mysql库 → user表中

root账号

root账号默认只能本机访问,其它电脑无法连接使用!
注意:
MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用。
如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接。

查询用户

select host,user from user;

创建用户

%:任意电脑IP    
local:本地访问
'IP地址':指定某地址访问
create user 用户名@'%' identified by '密码';
flush privileges;//刷新权限,对于user表的所有操作后都应该刷新

修改用户密码

– 密码都会调用password()方法进行加密

update user set password = PASSWORD('新密码') where user = '用户名';//   5.7版本前
update user set authentication_string = password('新密码') where user = '用户名';    5.7版本后

删除用户

drop user '用户名';

授权语句 – grant

  1. 普通权限
    grant 权限 on 数据库对象 to 用户名;
    例:
    grant select on 库名.* to 用户名@'%';  //本条语句将某库下的所有表的select权限授予了某用户
    grant insert on test.* to 用户名@'%';   //插入权限
    grant update on test.* to 用户名@'%';   //修改权限
    grant delete on test.* to 用户名@'%';   //删除权限
    grant select,insert,update,delete on 库名.* to 用户名@'%';   //汇总
    
  2. 高级权限
     grant all privileges on test.* to 用户名@'%';   //该用户在普通权限的基础上拥有了表的增删查改权限
    

撤销权限

revoke 权限 on 数据库对象 from 用户名;
例:

revoke select on ps_java.* from 'passerby'@'%';
revoke all privileges, grant option from 'passerby'@'%';

查看当前用户权限

show grants;

查看其它用户权限

show grants for 用户名@'%';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值