mysql脏读解决方案_MySQL数据库的核心知识点

本文详述了MySQL数据库的事务特性、隔离级别、并发问题及其解决方案,涵盖数据库范式、事务分类、常见隔离级别及其引发的问题。此外,文章讨论了MySQL的存储引擎、索引类型、锁机制,强调了索引对查询性能的影响。最后,概述了MySQL的调优技巧,包括表结构设计、SQL语句优化和数据库配置优化,旨在提升数据库性能。
摘要由CSDN通过智能技术生成

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于 Web 应用尤

其明显。关于数据库的性能,这并不只是 DBA 才需要担心的事,而这更是我们

程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其

是查表时的 SQL 语句),我们都需要注意数据操作的性能。这里,我们不会讲过

多的 SQL 语句的优化,而只是针对 MySQL 这一 Web 应用最多的数据库。希望下

面的这些优化技巧对你有用。

数据库的使用,是开发人员的基本功,对它掌握越清晰越深入,你能做的事情就越多。

做业务,要懂基本的SQL语句;

做性能优化,要懂索引,懂引擎;

做分库分表,要懂主从,懂读写分离...

今天我们用10分钟,重点梳理一遍以下几方面:

  • 数据库知识点汇总;数据库事务特性和隔离级别;详解关系型数据库、索引与锁机制;数据库调优与最佳实践;面试考察点及加分项。

知识点汇总

1f1df7184afc1714faf62a9599663ee6.png

一、数据库的不同类型

1.常用的关系型数据库

  • Oracle:功能强大,主要缺点就是贵MySQL:互联网行业中最流行的数据库,这不仅仅是因为MySQL的免费。可以说关系数据库场景中你需要的功能,MySQL都能很好的满足,后面详解部分会详细介绍MySQL的一些知识点MariaDB:是MySQL的分支,由开源社区维护,MariaDB虽然被看作MySQL的替代品,但它在扩展功能、存储引擎上都有非常好的改进PostgreSQL:也叫PGSQL,PGSQL类似于Oracle的多进程框架,可以支持高并发的应用场景,PG几乎支持所有的SQL标准,支持类型相当丰富。PG更加适合严格的企业应用场景,而MySQL更适合业务逻辑相对简单、数据可靠性要求较低的互联网场景。

2.NoSQL数据库(非关系型数据库)

  • Redis:提供了持久化能力,支持多种数据类型。Redis适用于数据变化快且数据大小可预测的场景。MongoDB:一个基于分布式文件存储的数据库,将数据存储为一个文档,数据结构由键值对组成。MongoDB比较适合表结构不明确,且数据结构可能不断变化的场景,不适合有事务和复杂查询的场景。HBase:建立在HDFS,也就是Hadoop文件系统之上的分布式面向列的数据库。类似于谷歌的大表设计,HBase可以提供快速随机访问海量结构化数据。在表中它由行排序,一个表有多个列族以及每一个列族可以有任意数量的列。 HBase依赖HDFS可以实现海量数据的可靠存储,适用于数据量大,写多读少,不需要复杂查询的场景。Cassandra:一个高可靠的大规模分布式存储系统。支持分布式的结构化Key-value存储,以高可用性为主要目标。适合写多的场景,适合做一些简单查询,不适合用来做数据分析统计。Pika:一个可持久化的大容量类Redis存储服务, 兼容五种主要数据结构的大部分命令。Pika使用磁盘存储,主要解决Redis大容量存储的成本问题。

3.NewSQL数据库(新一代关系型数据库)

  • TiDB:开源的分布式关系数据库,几乎完全兼容MySQL,能够支持水平弹性扩展、ACID事务、标准SQL、MySQL语法和MySQL协议,具有数据强一致的高可用特性。既适合在线事务处理,也适合在线分析处理。OceanBase:OceanBase是蚂蚁金服的数据库,OB是可以满足金融级的可靠性和数据一致性要求的数据库系统。当你需要使用事务,并且数据量比较大,就比较适合使用OB。不过目前OB已经商业化,不再开源。

二、事物特性及事物类型

后面的详解知识点会展开介绍

三、数据库的范式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值