
MySQL
文章平均质量分 88
Linux服务器开发
C/C++Linux后台服务器开发高级架构师内容包括C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,音视频开发,Linux内核,TCP/IP,协程,DPDK多个高级知识点。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL的数据类型和存储引擎介绍
存储引擎是 MySQL 中具体与文件打交道的子系统,它是根据 MySQL AB 公司提供的文件访问层抽象接口定制的一种文件访问机制,这种机制就叫作存储引擎,下面是一些常用的存储引擎,有远古时期的 MyISAM、支持事务的 InnoDB、内存类型的 Memory、归档类型的 Archive、列式存储的 Infobright,以及一些新兴的存储引擎,以 RocksDB 为底层基础的 MyRocks 和 RocksDB,和以分形树索引组织存储的 TokuDB。InnoDB 支持外键,MyISAM 不支持;原创 2022-12-23 15:01:26 · 448 阅读 · 0 评论 -
MySQL缓存策略分析
一、背景介绍众所周知,常用的关系型数据库MySQL底层是以B+树来组织存储在磁盘中的数据,而由于磁盘IO的读写性能较差,加之实际业务场景中读操作的次数要数倍于写操作。因此,适当的将读写操作分离,设计一种合适的缓存策略对提升MySQL性能异常重要。本文讲述的重点放在MySQL读写分离和缓存方案上,同时介绍MySQL的主从复制原理,对缓存方案中存在的数据同步问题进行分析并给出一致性方案,最后对三类常见的缓存问题进行分析。二、MySQL主从复制原理MySQL的主从复制主要解决的问题是数据备份、高可原创 2022-05-20 14:26:45 · 272 阅读 · 0 评论 -
一文详解Mysql锁&事务隔离级别
一、锁的定义 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共 享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。二、锁的分类 从性能上分为乐观锁(用版本号对比来实现)和悲观锁update ticket set count=count-1,version=v原创 2021-08-21 16:38:04 · 317 阅读 · 0 评论 -
后端开发-MySQL学习之索引机制最详细版(B+树)
一、索引是什么? 索引是为了加速对表中数据行的检索而创建的一种分散存储的数据结构。而且是实现了高级查找算法的数据结构,索引一般以文件形式存储在磁盘上,索引检索需要磁盘I/O操作。文章视频讲解:后端开发中MySQL InnoDB 索引以及事务C/C++ Linux服务器开发高级架构免费学习视频点击:C/C++Linux服务器开发高级架构师/Linux后台架构师二、为什么要使用索引?索引能极大的减少存储引擎需要扫描的数据量。 索引可以把随机IO变成顺序IO。 索引可以帮助我们在进行原创 2021-07-21 16:01:09 · 375 阅读 · 0 评论 -
深入理解MYSQL索引优化:多列索引
索引是什么是存储引擎用于找到数据的一种数据结构。C/C++ Linux服务器开发高级架构视频点击:C/C++Linux服务器开发高级架构师/Linux后台架构师-学习视频MYSQL索引优化视频详解:深入理解MySQL—索引及其优化索引的性能在数据量小的时候,一个坏的索引往往作用没有那么明显,但是在数据量比较大的时候一个坏的索引和好的索引有巨大的区别。在查询优化的时候应该首先考虑索引优化。这个是最简单的,也是效果最好。索引的执行流程索引 => 索引值 =>原创 2021-06-26 15:18:42 · 280 阅读 · 0 评论 -
现在后端开发都在用什么数据库存储数据?
正文:1.Oracle:传统行业,尤其是政府,医疗,学校和大企业,基本上还是Oracle应用最广,其次就是DB2。反而是WebLogic和WebSphere这些中间件基本上随着经典javaee的没落,已经逐步退出历史舞台,被富前端和微服务框架的轻量级组合所替代。2.MySQL:传统行业的很多新项目也大量开始应用MySQL,因为轻量级数据库的前期成本很低,可以保证项目预算够用,所以主要是新项目居多,面向互联网连接的项目也居多。这些系统一般不会像Oracle一样承担关键性业务的数据存储,所以选择什么原创 2021-06-19 16:24:57 · 1543 阅读 · 0 评论 -
深入理解MySQL索引和优化丨MySQL的核心原理
索引介绍文章相关视频讲解:C/C++ Linux服务器开发高级架构学习视频点击:C/C++Linux服务器开发/Linux后台架构师-学习视频理解mysql—索引及其优化MySQL的核心原理分析索引是什么官方介绍索引是帮助MySQL高效获取数据的数据结构。更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。 一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往是存储在磁盘上的文件中的(可能存储在单独的索引文件中,也可能和数据一起存储在数据文件中)。转载 2021-05-19 21:25:42 · 205 阅读 · 0 评论 -
MySQL数据库的性能的影响分析及优化
MySQL数据库的性能的影响一. 服务器的硬件的限制二. 服务器所使用的操作系统三. 服务器的所配置的参数设置不同四. 数据库存储引擎的选择五. 数据库的参数配置的不同六. (重点)数据库的结构的设计和SQL语句文章相关视频讲解:c/c++Linux后台服务器开发高级架构师视频资料MySQL——索引及其优化MySQL的核心原理分析,核心知识点是什么?1). 服务器的配置和设置(cpu和可用的内存的大小) 1.网络和I/O资源 2.cpu的主频和核心的原创 2021-05-11 21:25:08 · 541 阅读 · 1 评论 -
【纯干货】你一定还不懂的,mysql缓存问题的解决方案
90分钟搞懂mysql缓存问题的解决方案1.读写分离方案2.强一致性和最终一致性下的解决方案3.缓存出现的故障如何解决视频讲解如下,点击观看:【纯干货】你一定还不懂的,mysql缓存问题的解决方案C/C++Linux服务器开发精彩内容包括:C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,P2P,音视频开发,Linux内核,Docker,TCP/IP,协程,DPDK多个高级知识点分享。点击链接订阅后直接观看:C/...原创 2021-03-19 15:43:45 · 159 阅读 · 0 评论 -
mysql锁机制详解
前言 之前项目中用到事务,需要保证数据的强一致性,期间也用到了mysql的锁,但当时对mysql的锁机制只是管中窥豹,所以本文打算总结一下mysql的锁机制。 本文主要论述关于mysql锁机制,mysql版本为5.7,引擎为innodb,由于实际中关于innodb锁相关的知识及加锁方式很多,所以没有那么多精力罗列所有场景下的加锁过程并加以分析,仅根据现在了解的知识,结合官方文档,说说自己的理解,如果发现有不对的地方,欢迎指正。概述 总的来说,InnoDB共有七种类型的锁:共享/排它原创 2021-03-11 20:55:59 · 155 阅读 · 0 评论 -
后端开发-MySQL数据库相关流程图原理图
前言整理了一些 MySQL 数据库相关流程图/原理图。做一下笔记,分享给大家一起学习。1. MySQL 主从复制原理图MySQL 主从复制原理是大厂后端的高频面试题,了解 MySQL 主从复制原理非常有必要。主从复制原理简言之,就三步曲,如下: 主数据库有个 bin-log 二进制文件,记录了所有增删改 SQL 语句(binlog线程); 从数据库把主数据库的 bin-log 文件的 SQL 语句复制过来(I/O线程); 从数据库的 relay-log 重做日志文件原创 2021-03-01 19:56:54 · 541 阅读 · 0 评论 -
天天写order by,你知道Mysql底层执行原理吗?
在实际的开发中一定会碰到根据某个字段进行排序后来显示结果的需求,但是你真的理解order by在 Mysql 底层是如何执行的吗? 假设你要查询城市是苏州的所有人名字,并且按照姓名进行排序返回前 1000 个人的姓名、年龄,这条 sql 语句应该如何写? 首先创建一张用户表,sql 语句如下: CREATE TABLE user ( id int(11) NOT NULL, city varchar(16) NOT NULL, name varchar(16) NO..原创 2021-01-15 15:53:20 · 571 阅读 · 1 评论 -
理解MySQL——索引与优化篇
写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页面在磁盘上随机分布,需要进行10^4次I/O,假设磁盘每次I/O时间为10ms(忽略数据传输时间),则总共需要100s(但实际上要好很多很多)。如果对之建立B-Tree索引,则只需要进行log100(10^6)=原创 2021-01-09 19:47:52 · 215 阅读 · 1 评论 -
一文讲清楚MySQL事务隔离级别和实现原理,后台开发人员必备知识
经常提到数据库的事务,那你知道数据库还有事务隔离的说法吗,事务隔离还有隔离级别,那什么是事务隔离,隔离级别又是什么呢?本文就帮大家梳理一下。MySQL 事务本文所说的 MySQL 事务都是指在 InnoDB 引擎下,MyISAM 引擎是不支持事务的。数据库事务指的是一组数据操作,事务内的操作要么就是全部成功,要么就是全部失败,什么都不做,其实不是没做,是可能做了一部分但是只要有一步失败,就要回滚所有操作,有点一不做二不休的意思。假设一个网购付款的操作,用户付款后要涉及到订单状态更新、扣库.原创 2020-12-22 15:56:36 · 218 阅读 · 2 评论 -
MySQL数据库访问性能优化
MYSQL应该是最流行的WEB后端数据库。大量应用于PHP,Ruby,Python,Java 等Web语言开发项目中,无论NOSQL发展多么快,都不影响大部分架构师选择MYSQL作为数据存储。MYSQL如此方便和稳定,以至于我们在开发 WEB 程序的时候非常少想到它。即使想到优化也是程序级别的,比方不要写过于消耗资源的SQL语句。可是除此之外,在整个系统上仍然有非常多能够优化的地方。1 优化原理说起MySQL的查询优化,相信大家会想到:不能使用SELECT *、不使用NULL字段、合理创建索引、原创 2020-11-17 16:22:29 · 899 阅读 · 0 评论