MYSQL
1、数据库简介
数据:描述事物的符号记录, 可以是数字、 文字、图形、图像、声音、语言等,数据有多种形式,它们都可以经过数字化后存入计算机。
数据库:存储数据的仓库,是长期存放在计算机内、有组织、可共享的大量数据的集合。
数据库中的数据按照一定数据模型组织、描述和存储,具有较小的冗余度,较高的独立性和易扩展性,并为各种用户共享,总结为以下几点:
- 数据结构化
- 数据的共享性高,冗余度低,易扩充
- 数据独立性高
- 数据由 DBMS 统一管理和控制(安全性、完整性、并发控制、故障恢复)
2、数据库管理系统
DBMS是所有数据的知识库,并对数据的存储、安全、一致性、并发操作、恢复和访问负责。
(1)DBMS支持的数据模型
(2)分类:
数据库管理系统有关系型数据库管理系统和非关系型数据库管理系统
- MongoDB、HBASE、redis是非关系型数据库;
- Mysql、IBM、oracle、sql server等等都是关系型数据库;
<1> 关系型数据库管理系统:
- 数据存储结构:二维表结构
- 查询能力:支持复杂查询
- 数据一致性:强一致性ACID使得对于安全性能很高的数据访问要求得以实现
- 高价值
<2> 非关系型数据库管理系统:
- 数据存储结构:数据结构化存储方法的集合,可以是文档或者键值对等;
- 查询能力:复杂查询欠缺;
- 拓展性好;
- 无事务处理的概念;
- 高扩展性;
- 低成本性;
<3> 对比
3、MYSQL简介
(版本选择:5.7.17版本以上,有MVV--高并发机制)
MySQL是一个小型关系数据库管理系统,开发者为瑞典MySQL AB公司,在2008年1月16号被sun公司10亿美金收购。
(1)排名及适用场景
数据库排名:DB-Engines Ranking - popularity ranking of database management systems
适用场景:互联网公司web网站系统、数据仓库系统、日志记录系统、嵌入式系统
(2)mysql体系结构
Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成的。
- Connectors指的是不同语言中与SQL的交互。
- Management Serveices & Utilities: 系统管理和控制工具。
- Connection Pool:连接池。管理缓冲用户连接,线程处理等需要缓存的需求。
- SQL Interface:SQL接口。接受用户的SQL命令,并且返回用户需要查询的结果。比如select from就是调 用SQL Interface。
- Parser: 解析器。SQL命令传递到解析器的时候会被解析器验证和解析。
- Optimizer:查询优化器。SQL语句在查询之前会使用查询优化器对查询进行优化。
- Cache和Buffer: 查询缓存。如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数 据。
- Engine:存储引擎。存储引擎是MySql中具体的与文件打交道的子系统。
(3)linux安装mysql
<1> 下载应用软件
<2> 安装应用软件
<3> 查看安装情况
<4> 默认模块禁用
<5> 安装服务模块
<6> 修改配置文件
skip-grant-tables --- 免密登录
character-set-server=gbk
lower_case_table_names=1
innodb_flush_log_at_trx_commit = 2
log-bin-trust-function-creators=1
<7> 应用初始化
<8> 启动数据库
<9> 登录数据库