【MySQL】之基础知识介绍
目录
- 一、数据库相关术语
- 二、MySQL 默认自带数据库简介
- 三、数据库设计三范式
一、数据库相关术语
1、数据库(datebase)
真正存放数据的地方或者容器,里面由一张张不同数据类型的数据表组成。
2、DBMS(数据库管理系统,Database Manage System)
操作和管理数据库的软件,我们是不能够直接操作数据库的,所有的操作都是通过DBMS来操作。没错!MySQL就是其中一种DBMS,所以,千万别说MySQL是数据库了,它是管理和操作数据库的软件而已。
3、数据表(table)
某种特定类型数据的结构化列表,比如包含学生各种信息的学生数据表,包含教师各种信息的教师数据表,这些表组合起来共同构成一个学校信息数据库。所以,数据表示数据库的子单元。
注意: 在同一个数据库中,表的名字是唯一,不可相同重复,但不同数据库之间可以有相同的表名字。
4、模式(schema)
关于数据库和表的布局及特性的信息。
5、列(column)
表中的一个字段(filed),数据表由列组成,所有表都是由一个或多个列组成的,而每一列存放着相同数据类型的数据。
6、行(row)
数据表中的一条记录,表中的数据都是按行来存储的,可以把表想象成一张网格,每一列代表一个字段,每一行代表一条数据。
7、主键(primary key)
能够唯一区分表中每个行的字段,没错,主键就是一个字段,而且这个字段的值不能够重复,必须唯一区分。
重点: 任意一个字段都可以作为主键,只要它满足任意两行的值不同就可以了,当然,主键也可以有多个字段组成,使用多个字段作为主键的标准是:多个字段组合的值必须是唯一的。
二、MySQL 默认自带数据库简介
1、information_schema
是一个信息数据库,它保存着关于MySQL服务器所维护的所有其他数据库的信息(如:数据库名、数据库的表、表栏的数据类型与访问权限等)
2、mysql
MySQL的核心数据库,类似于sql server中的master表,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息。mysql下有一张user表,里面包含了所有用户的信息,包括用户名和密码,所以我们可以直接在user表中修改用户的密码
3、performance_schema
主要用于收集数据库服务器性能参数
4、sys
sys库所有的数据源来自 performance_schema。目标是把performance_schema的复杂度降低,让DBA能更好的阅读这个库里的内容。让DBA更快的了解DB的运行情况
三、数据库设计三范式
1 范式
1NF是对属性的原子性约束,要求属性具有原子性,不可再分解(只要是关系型数据库都满足1NF)。
2 范式
2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性。
3 范式
3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。没有冗余的数据库设计可以做到
注意: 没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据,具体做法是:在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑,降低范式就是增加字段,允许冗余。
还没有评论,来说两句吧...