mysql数据库-基本概念介绍
mysql数据库
数据库是什么
存储数的的仓库
- 列表,字典....等等,都是内存中的,其缺点:断点即消失, 优点:速度快
- 文件存储, 缺点: 速度慢, 优点: 可以实现永久保存
本质就是一套基于CS结构的,客户端和服务端程序,最终的数据存储在服务器端的磁盘中
为什么要使用数据库
直接使用文件存储带来的问题
-
速度慢
-
我们的程序将来可能分布在不同的机器上
-
分布式:
每个服务器提供不同的服务,有时候某个业务流程可能会涉及到多个服务器
- 优点:耦合度降低,易维护
- 缺点:通讯繁琐,容灾性没有集群好
-
集群:
所有服务器提供的服务是一模一样的
- 优点:容灾性强,易扩展,可插拔
- 缺点:耦合度高
-
-
用户权限管理
-
多个客户端并访问, 数据要保证安全
数据库的分类
-
关系型数据库
数据之间可以存在关联关系,数据库会帮我们维护这种关系
通常存储介质都是磁盘
常见类型:
-
MySQL
是我们学习的重点: 是目前最流行的关系型数据库,因为其免费开源,性能不错,目前已经被oracle收购了,适用于中小型企业
-
sqlserver
是微软推出的,因为其职能运行在Windows平台,所以发展不咋的
-
oracle
目前最强大的关系型数据库,主要是在集群,和用户管理上,非常适合大型企业
-
db2
IBM的产品,主要面向企业级用户,不差钱的用户,捆绑硬件销售
-
-
非关系型数据库
没有维护数据之间的关系
通常存储介质都是内存
常见的非关系型:
MongoDB
Redis
memcache
什么是数据库引擎?
引擎就是一个系统最核心的部分
数据库引擎指的是真正负责存储数据的模块;
不同的引擎具备不同的特点:需要根据实际需求来选择最适合的
SQL全程是结构化查询语句,在关系型数据库中是通用的
-
查看支持的引擎
show engines;
-
创建表指定引擎
create table 表名称(列名 类型)engine = xxxx;
默认的也是最常用的引擎是innodb
数据库重要概念
数据(column) 文件中的某个字符串
记录(Row) 文件中的某一行
表(table) 某个文件
库(database) 就是一个文件夹
DBMS 数据库管理系统(指的是数据库软件)
数据库服务器 运行DBMS的计算机