栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

第四章 数据库设计

第四章 数据库设计

MySQL数据库 第四章 数据库设计 一、为什么需要设计数据库 1、良好的数据库设计

(1)节省数据的存储空间
(2)能够保证数据的完整性
(3)方便进行数据库应用系统的开发

2、糟糕的数据库设计

(1)数据冗余、存储空间浪费
(2)内存空间浪费
(3)数据更新和插入的异常

二、软件项目开发周期中数据库设计


(1)需求分析阶段:分析客户的业务和数据处理需求
(2)概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完整
(3)详细设计阶段:应用三大范式审核数据库结构
(4)代码编写阶段:物理实现数据库,编码实现应用
(5)软件测试阶段:……
(6)安装部署:……

三、E-R图


绘制E-R图

四、三大范式 1、为什么需要数据规范化

2、不合规范的表设计

(1)信息重复
(2)更新异常
(3)插入异常——无法正确表示信息
(4)删除异常——丢失有效信息

3、第一范式 (1st NF)

确保每列都是不可再分的最小数据单元。

4、第二范式 (2nd NF)

要求每张表只能描述一件事情,确保每列都与主键相关。

5、第三范式 (3nd NF)

确保表中各列必须和主键直接相关,不存在传递依赖。

五、基于角色的权限管理(Role-based Access Control,RBAC)

又称为角色的访问控制。
1、该权限控制方案,采用了用户和角色关联,而角色和具体的功能管理,这一解决方法。在数据库层面,会采用用户信息表、角色信息表、功能权限信息表和角色功能信息表组成。
2、用户信息表和角色信息表构成了典型的多对一映射关系,但是在复杂的权限中,也有可能一个用户会被分配多个角色,以为就是说用户信息表和角色信息表形成了多对多映射关系,那么在这种情况下,就需要五张表来完成。角色信息表和功能信息表则形成了多对多的映射关系。
3、RBAC中,支持三个著名的安全原则:
(1)最小权限原则
(2)责任分离原则
(3)数据抽象原则

六、MySQL用户管理 1、为什么需要用户管理

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

2、创建普通用户

– 创建 MySQL 数据库用户 SQL 语法:
– create user ‘用户名’@‘数据库所在 IP 地址’ [identified by ‘登录密码’]
create user ‘kj210701q’@‘localhost’ identified by ‘kj210701q’;

3、 查看 MySQL 所有的用户信息

use mysql;
– 在数据库 mysql 中的 user 表,存储的就是该 MySQL 数据库的所有用户信息和权限
select * from user;

4、给用户授权
 
grant select on ewms_db.sys_emp to 'kj210701q'@'localhost';

授予 kj210701q 用户查看和插入 sys_dept 表权限

grant select, insert on ewms_db.sys_dept to 'kj210701q'@'localhost';

– 如果需要授予所有权限,则通过通配符 * 完成

grant select, insert, update, delete, create, drop on ewms_db.* to 'kj210701q'@'localhost';
grant select, insert, update, delete, create, drop, alter on *.* to 'kj210701q'@'localhost';
5、撤销授权
revoke 权限 on 数据库.数据表 from '用户名' @'主机名';
6、删除用户
drop  user '用户名' @'主机名';
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/307290.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号