MySQL 数据库介绍
什么是数据库 DB?
DB 的全称是 database, 即数据库的意思. 数据库实际上就是一个文件集合, 是一个存储数据的仓库, 数据库是按照特定的格式把数据存储起来, 用户可以对存储的数据进行增删改查操作;
什么是 sql?
SQL 代表结构化查询语言(Structured Query Language).SQL 是用于访问数据库的标准化语言.
SQL 包含三个部分:
数据定义语言包含定义数据库及其对象的语句, 例如表, 视图, 触发器, 存储过程等.
数据操作语言包含允许更新和查询数据的语句.
数据控制语言允许授予用户权限访问数据库中特定数据的权限
MySQL 是什么?
My 是 MySQL 的联合创始人 - Monty Widenius 的女儿的名字. MySQL 是 My 和 SQL 的组合, 这就是 MySQL 命名的由来.
MySQL 的官方网址: http://www.mysql.com/,MySQL 的社区版本下载地址为: http://dev.mysql.com/downloads/mysql/
MySQL 是一个数据库管理系统, 也是一个关系数据库. 它是由 Oracle 支持的开源软件. 如果需要, 还可以更改其源代码或进行二次开发以满足需求.
什么是关系型数据库(SQL)?
关系型数据库是依据关系模型来创建的数据库.
所谓关系模型就是 "一对一, 一对多, 多对多" 等关系模型, 关系模型就是指二维表格模型, 因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织.
关系型数据可以很好地存储一些关系模型的数据, 比如一个老师对应多个学生的数据("多对多"), 一本书对应多个作者("一对多"), 一本书对应一个出版日期("一对一")
关系模型中的一些概念?
关系: 一张二维表, 每个关系都具有一个关系名, 也就是表名
元组: 二维表中的一行, 在数据库中被称为记录
属性: 二维表中的一列, 在数据库中被称为字段
域: 属性的取值范围, 也就是数据库中某一列的取值限制
关键字: 一组可以唯一标识元组的属性, 数据库中常称为主键, 由一个或多个列组成
关系模式: 指对关系的描述. 其格式为: 关系名(属性 1, 属性 2, ... ... , 属性 N), 在数据库中成为表结构
关系型数据库的优缺点:
优点:
1, 易于维护: 都是使用表结构, 格式一致; 丰富的完整性 (实体完整性, 参照完整性和用户定义的完整性) 大大减低了数据冗余和数据不一致的概率
2, 使用方便: SQL 语言通用, 可用于复杂查询;
3, 复杂操作: 支持 SQL, 可用于一个表以及多个表之间非常复杂的查询.
缺点:
1, 网站的用户并发性非常高, 往往达到每秒上万次读写请求, 对于传统关系型数据库来说, 硬盘 I/O 是一个很大的瓶颈
2, 网站每天产生的数据量是巨大的, 对于关系型数据库来说, 在一张包含海量数据的表中查询, 效率是非常低的
3, 固定的表结构, 灵活度稍欠
关系型数据库有:
Oracle,SQL Server,MySQL,PostgreSQL,DB2,Microsoft Access, SQLite,Teradata,MariaDB(MySQL 的一个分支),SAP 等
什么是非关系型数据库(NOSQL)?
非关系型数据库主要是基于 "非关系模型" 的数据库(由于关系型太大, 所以一般用 "非关系型" 来表示其他类型的数据库)
非关系型模型比如有:
存储的数据是一列列的. 关系型数据库以一行作为一个记录, 列模型数据库以一列为一个记录.(这种模型, IO 很快, 主要是一些分布式数据库)
非关系型数据库的优缺点:
优点:
1, 格式灵活: 存储数据的格式可以是 key-value(键值)形式, 文档形式, 图片形式等等, 文档形式, 图片形式等等, 使用灵活, 应用场景广泛.
2, 速度快: 可以使用硬盘或者内存作为载体, 而关系型数据库只能使用硬盘;
3, 成本低: 数据库部署简单, 基本都是开源软件.
缺点:
1, 不提供 sql 支持, 学习和使用成本较高;
2, 无事务处理;
非关系型数据库: Redis MongoDB Memcache 等
来源: https://www.cnblogs.com/Daemon-yyang/p/11403677.html