MySQL数据库05 数据库控制和设计

本文介绍了MySQL数据库的用户控制,包括新建用户语法、授权、撤销授权、修改密码,特别是如何处理忘记root密码的情况。此外,还讨论了数据库设计的基本原则,如三大范式和不同类型的表间关系,如一对一、一对多和多对多关系,并通过案例进行说明。
摘要由CSDN通过智能技术生成

DCl 语句

数据库控制 controller

数据库的用户

root是超级管理员用户,很容易引发由于误操作所导致的数据不安全问题

查看mysql 数据库的mysql 数据库 user 表 存储了mysql 数据库所有的用户

新建用户语法

create user 'zhangsan'@'localhost';
# 创建没有密码的账户 zhangsan , 允许在 本机登录
create user 'zhangsan'@'%';
# 创建没有密码的账户 zhangsan , 允许在任何主机登录
create user 'lisi'@'localhost' identified by '456789'
# 创建密码为456789 的账户 lisi

查看 mysql 中的 user 表, 更够发现 新建用户的权限 全部为N

新建用户甚至 无法进入 emp 数据库

授权命令

给已存在的用户 授予 相应权限

GRANT语句可实现创建用户同时授权或为已存在的用户授权
grant 权限名称 on 数据库.表名 to 用户名@地址

创建用户同时授权

grant 权限名称 on 数据库.表名 to 用户名@地址 identified by 密码
# 在创建用户的同时授权

授权, 并指定 权限的可传递性

grant 权限名称 on 数据库.表名 to 用户名@地址 with grant option
# with grant option 被授权的用户, 拥有权限的传递功能

常用权限名称

create
drop
insert
delete
select
update
alter
# 想要赋予多个权限 书写多个权限名称 使用 逗号 隔开
# 如果想要授予所有权限 可以使用 all
# 给emp数据库的所有表 emp.*
# 给所有数据库的所有表通配符表达式 *.* 

给’lisi’ 授权 可以查看 emp 数据库的 emp 表

grant select on emp.emp to 'lisi'@'localhost';

给’lisi’ 授权 可以更改和删除 emp 数据库的 emp 表

grant update,delete,insert on emp.emp to 'lisi'@'localhost';

授予所有权限

grant all on *.* to 'lisi'@'localhost';

创建 ‘wangwu’ 用户, 并授权

grant select on emp.emp to 'wangwu'@'%' identified by '123456';

撤销授权命令

# revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

撤销 lisi的 删除权限

revoke delete on emp.emp from 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值