数据库用户管理和授权

SQL分类

DBA:数据库管理员,专门对数据库进行管理和授权的的相关操作。
用户管理
mysql数据库中有一个user表,用来存储用户的信息。
查询用户

-- 1. 切换到mysql数据库
USE myql;
-- 2. 查询user表
SELECT * FROM USER;
* 通配符: % 表示可以在任意主机使用用户登录数据库


添加用户

# 语法:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
CREATE USER 'zhangsan'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'lisi'@'%' IDENTIFIED BY '123456';


删除用户
# 语法:DROP USER '用户名'@'主机名';
DROP USER 'zhangsan'@'localhost'; -- 删除zhangsan用户


修改用户密码
# 语法:SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');
SET PASSWORD FOR 'lisi'@'%' = PASSWORD('abc'); -- 修改lisi的密码为abc

修改完密码,用新密码登录mysql

mysql中忘记了root用户的密码,需要使用管理员权限打开cmd命令进行重置?
1. cmd -- > net stop mysql 停止mysql服务
* 需要管理员运行该cmd
2. 使用无验证方式启动mysql服务: mysqld --skip-grant-tables
3. 打开新的cmd窗口,直接输入mysql命令,敲回车。就可以登录成功
4. use mysql;
5. update user set password = password('你的新密码') where user = 'root';
6. 关闭两个窗口
7. 打开任务管理器,手动结束mysqld.exe 的进程
8. 启动mysql服务
9. 使用新密码登录。
权限管理
新建的用户默认只有登录权限。需要通过授权才能进行其他操作。
查询用户权限
-- 查询用户权限
# 语法:SHOW GRANTS FOR '用户名'@'主机名';
SHOW GRANTS FOR 'lisi'@'%';
list@% 用户有 USAGE 登录权限

授予用户权限
-- 授予用户权限
# 语法:grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';
-- 给lisi用户授予 查询,修改,删除 db3数据库的account表数据的权限
GRANT SELECT,UPDATE,DELETE ON db3.`account` TO 'lisi'@'%';
-- 给zhangsan用户授予所有权限
GRANT ALL ON *.* TO 'zhangsan'@'%';
撤销用户权限
-- 撤销用户权限
# 语法:revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';
-- 给lisi用户撤销 db3.account 的 UPDATE权限
REVOKE UPDATE ON db3.`account` FROM 'lisi'@'%';
-- 给zhangsan用户取消 所有数据库和表 的 DELETE 和 UPDATE的权限
REVOKE DELETE,UPDATE ON *.* FROM 'zhangsan'@'localhost'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值