数据库学习笔记

1.关系型数据库和非关系型数据库

关系型数据库使用关系模型、对数据读写更快速、支持复杂查询。

非关系型数据库基于键值来存储、支持图片和文字的存储,是nosql的,不需要sql层的解析。

2.添加索引的原因

对于唯一的字段可以添加唯一索引确保行唯一;可以优化查询;可以避免排序和临时表。

3.数据库的组成

服务器和存储引擎,服务器包括连接器、缓存、分析器、优化器、执行器,存储引擎存储具体的数据。

4.事务隔离级别

未提交读、提交读、可重复读、串行读

未提交读是指一个事务对数据的修改在数据未提交时就可以被其他事务发现。

提交读是对应的。

可重复读是指在一次事务中数据前后一致,其他事务的修改对事务的过程不可见。

串行读是指串行读写

5.并发控制的问题

脏读:读的过程数据被回退

幻读:读前后数据的增加和删除

不可重复读

丢失修改

6.innodb和mylsam存储引擎区别

inoodb支持事务,支持行锁,对于各种级别的事务隔离都支持。

7.存储引擎使用的索引

包括哈希索引和b树索引,b+树的数据都在叶子节点,而b树需要中序遍历才能得到数据。

8.添加了索引也不能保证一定使用索引的条件

比如未按照字段查询,或者对于组合索引没有按照最左前缀匹配查询

9.加快查询的方法

避免使用select*,使用更快的存储引擎,创建索引

10.视图和游标

视图是虚拟表是查询过程使用的,游标是在逐行处理中使用的。

相关推荐
2301_781571427 小时前
Golang格式化输出占位符都有什么_Golang fmt占位符教程【通俗】
jvm·数据库·python
养肥胖虎8 小时前
RAG学习笔记(3):区分数据库检索与RAG的使用场景
数据库·ai·rag
_ku_ku_8 小时前
数据库系统原理 · 数据库应用开发 · 自学总结
数据库
Upsy-Daisy8 小时前
AI Agent 项目学习笔记(二):Spring AI 与 ChatClient 主链路解析
人工智能·笔记·学习
No8g攻城狮9 小时前
【人大金仓】wsl2+ubuntu22.04安装人大金仓数据库V9
java·数据库·spring boot·非关系型数据库
山峰哥9 小时前
SQL慢查询调优实战:从全表扫描到索引覆盖的完整复盘
前端·数据库·sql·性能优化
代码中介商9 小时前
Redis入门:5大数据类型全解析
数据库·redis·缓存
渣渣盟10 小时前
数据库设计范式详解(纯小白版)
数据库·oracle·软考·数据库工程师
杨浦老苏10 小时前
AI原生笔记应用Tolaria
笔记·ai·markdown·obsidian
中屹指纹浏览器10 小时前
浏览器网络栈隔离技术研究:TCP/IP底层指纹生成与规避原理
经验分享·笔记