数据库分类、存储引擎、介绍、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、数据库设计

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

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

相关推荐
Java开发追求者6 分钟前
windows卸载mysql教程
mysql·mysql卸载
草莓熊Lotso1 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·linux·运维·服务器·数据库·c++·mysql
Trouvaille ~1 小时前
【MySQL篇】数据库操作:从创建到管理
linux·数据库·mysql·oracle·xshell·ddl
瀚高PG实验室2 小时前
ETL中,分区表子表未及时收集统计信息,导致sql执行耗时很长
数据库·数据仓库·sql·etl·瀚高数据库
星川水月2 小时前
SQL 开窗函数排序详解
数据库·sql
VIV-2 小时前
医院病房管理系统的数据库设计(SQL Server)
数据库·sql·sqlserver
Chasing__Dreams2 小时前
Mysql--基础知识点--96--count * VS count 列
数据库·mysql
子木HAPPY阳VIP2 小时前
【无标题】
java·python·mysql
小糊涂灬3 小时前
Mybatis+mysql 一对多查询问题
mysql·mybatis
黑牛儿3 小时前
MySQL负载均衡配置详细步骤(新手易操作版)
mysql·adb·负载均衡