1、为什么使用数据库
持久、结构性的将数据保存起来
2、数据库与数据库管理系统
数据库(DB):存储数据的仓库,本质是一个文件系统(mysql安装目录下的data目录中)
数据库管理系统(DBMS):操作和管理数据库的软件
常见的数据库DBMS:MYSQL、 Sql server、 Oracle、 mongdb,数据库排名网站DB-Engines Ranking - popularity ranking of database management systems
SQL:专门用来和数据库通信得语言
3、Oracle vs MySQL
Oracle 更适合大型跨国企业的使用,因为他们对费用不敏感,但是对性能要求以及安全性有更高的要求
MySOL 由于其体积小、速度快、总体拥有成本低,可处理上于万条记录的大型数据库,尤其是开放源码这一特点,使得很多互联网公司、中小型网站选择了MySOL作为网站数据库 (Facebook,Twitter,YouTube,阿里巴巴蚂蚁金服,去哪儿,美团外卖,腾讯)。
4、数据库分类
关系型数据库(sql)(二元关系存储数据)
mysql 、orcale 、sql server都是关系型数据库,以行列二维表形式存储数据的DBMS
sql就是关系型数据库的查询语言
非关系型数据库(nosql)
键值型数据库:redis
文档型数据库:mongodb 、couchdb即value可以使xml或者json
搜索引擎:es 、solr、splunk
列存储:相对于行式数据库mysql、oracle、sql server,列式数据库HBase大量降低了io
图形数据库:neo4j、infogrid
4、关系型数据库设计规则
4.1、表、记录、字段
一个实体集(class)对应于数据库中的一个表 (table) ,一个实体 (instance) 则对应于数据库表中的一行(row),也称为一条记录 (record) 。一个属性 (attribute) 对应于数据库表中的一列 (column),也称为一个字段 (field) 。
4.2、表的关联关系
一对一
一对多
多对多
自我引用