MySQL:数据库基础

数据库基础

1.什么是数据库?

数据库(Database,简称DB),长期存放在计算机内,有组织,可共享的大量数据的集合,是一个数据"仓库"。用来存放管理数据。

2.为什么要学习数据库?

看了数据库的介绍,好像跟文件差不多?存储数据用文件不是也一样吗? 文件有一些缺点:

  • 安全性问题无法保证
  • 不利于数据的查询和管理
  • 不利于存储海量的数据
  • 文件在程序中控制不方便

当然了文件的这些缺点就是数据库的优点所在了。

3.主流的数据库(了解)

• SQL Sever:微软的产品,.Net程序员的最爱,中大型项目。

• Oracle:甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。

• MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。

• PostgreSQL:加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。

• SQLite:是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

• H2:是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。

4.服务器,数据库,表之间的关系

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。

为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

5.数据的逻辑存储

基本上数据就是按照行与列的方式进行储存的。

6.MYSQL架构

MYSQL的架构一共为四层 分别是:

1.连接层 :负责处理客户端接入,像用户登录、授权、连接管理等都在此进行。

2.服务层 :是核心层,包含诸多关键功能模块。SQL 接口接收客户端 SQL 命令并返回结果;解析器对 SQL 进行词法和语法分析等待

3.引擎层 :决定表数据的读写和存储方式,是较为重要的一层。服务层制定执行计划后,由引擎层执行具体的数据读写操作。

4.存储层:为上层服务提供基础文件服务,存储着日志、数据、索引等文件,与引擎层交互,是数据的物理存储基础

7.存储引擎


我们一般就使用两个。

相关推荐
2301_807583235 分钟前
了解python,并编写第一个程序,常见的bug
linux·python
蓝色记忆18 分钟前
执行计划FirstMatch
mysql
4***149026 分钟前
Rust系统工具开发实践指南
开发语言·后端·rust
a***131438 分钟前
redis存取list集合
windows·redis·list
2501_9409439142 分钟前
体系课\ Python Web全栈工程师
开发语言·前端·python
杨德杰1 小时前
Ubuntu设置VNC远程桌面
linux·运维·ubuntu
rafael(一只小鱼)1 小时前
AI运维开发平台学习
java·开发语言
toooooop81 小时前
CentOS 7 系统上安装 **Nginx + MySQL 5.7 + PHP 7.3 + Redis** 的完整步骤
redis·mysql·nginx·centos·php7
b***74881 小时前
C++在系统中的内存对齐
开发语言·c++
散峰而望1 小时前
C++数组(三)(算法竞赛)
开发语言·c++·算法·github