数据库分类、存储引擎、介绍、Mysql、SQL分类

DAY17.1 Java核心基础

数据库

关系型数据库(传统数据库,安全可靠,数据量大):Mysql、Oracle、SQLServer

非关系型数据库nosql(缓存数据库,高并发项目中,存储热点数据,短信验证码)Redis、MongDB

DataBase DB是一个存储数据的仓库,为了方便数据的管理,它将数据按照特定的规律存储在硬盘上,通过数据库管理系统,可以有效的组织和管理数据库中的数据

Mysql 速度快、开源

保存数据

管理数据(增删改查)

其实应该叫DBMS DataBase Manager System:数据库管理系统

数据库存储引擎

存储引擎就是存储数据 ,为数据建立索引、更新、查询数据 技术等实现方法

关系型数据库中的数据是以表的形式存储的 ,所以存储引擎可以称为表类型(存储和操作此表的类型)

Mysql提供了多种存储引擎

SQL指令,展示存储引擎

sql 复制代码
show engines

事务:数据库为了确保数据正确的一种约束,单体数据库

分布式事务(数据量大):多个服务器构建起来的一个系统

Transactions:事务

XA:分布式事务

Mysql数据库默认使用InnoDB存储引擎,InnoDB对事务的处理能力非常强大,是其它存储引擎无法比拟的

InnoDB存储引擎:自增,自增列不能为空,且必须唯一,MySQL中规定自增列必须为主键

InnoDB存储引擎:支持外键

InnoDB存储引擎

优势:提供了良好的事务管理能力,崩溃修复能力和并发控制

缺点:读写效率较差,占用的数据空间相对较大

如何操作数据库

通过SQL语言来管理数据库,SQL也是一种编程语言,专门用来管理数据库的

SQL分为

  • DML(数据操作语言)操作数据库中包含的数据(insert、update、delete)
  • DDL(数据定义语言)创建、删除、修改数据库、数据表(create、drop、alter)
  • DQL(数据查询语言)对数据库中的数据进行查询(select)
  • DCL(数据控制语言)用来控制数据库组件的存取(事务)(commit、rollback)

需要掌握两部分

1、掌握数据库的使用

数据的增删查改,数据库的创建、删除,数据表的创建、删除、修改,事务的操作、视图、存储过程、触发器、索引、主外键约束

2、数据库设计

根据项目的需求,设计数据库和表之间的关联关系

数据库设计非常重要,直接决定项目的质量,数据库先行,驱动项目的开发

相关推荐
小白男神14 小时前
MySQL进阶学习四(存储过程、游标、触发器)
mysql
这个DBA有点耶14 小时前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
漂着的圆木16 小时前
Agent 功能参与度:Copilot 怎么算
sql·数据分析·agent·githubcopilot·度量
kybs199116 小时前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
程序猿_极客16 小时前
【免费】分享一套优质的基于SSM的校园失物招领系统的设计与实现,源码+文档+视频详解(讲解)
java·mysql·ssm·课程设计·失物招领系统
于平安17 小时前
MySQL-触发器
数据库·mysql
大猫和小黄18 小时前
MySQL锁与MVCC深度解析
mysql·mvcc·
数据库小学妹19 小时前
MySQL库存扣减实战:原子UPDATE、分桶方案与锁范围分析
数据库·后端·mysql
旺仔不是程序员19 小时前
LIMIT 1:PostgreSQL 只取一行的高效查询姿势
数据库·后端·sql