(十六)MySQL调优:单机数据库如何在高并发场景使用 在当前的IT开发行业中,系统访问量日涨、并发暴增、线上瓶颈等各种性能问题纷涌而至,性能优化成为了现时代中一个炙手可热的名词,无论是在开发、面试过程中,性能优化都是一个常谈常新的话题。而MySQL作为整个系统的后方大本营,由于是基于磁盘的原因,性能瓶颈往往也会随着流量增大而凸显出来。 juejin 2022-11-14 105
(十七)MySQL优化:编写优秀的SQL语句 Structured Query Language)标准结构化查询语言简称SQL,编写SQL语句是每位后端开发日常职责中,接触最多的一项工作,SQL是关系型数据库诞生的产物,无论是什么数据库,MySQL、Oracle、SQL Server、DB2、PgSQL....,只要还处于关系型数据库这个范畴,都会遵循统一的SQL标准,这句话简单来说也就是:无论什么关系型数据库,本质上SQL的语法都是相同的,因为它们都实现了相同的SQL标准,不同数据库之间仅支持的特性不同而已。 juejin 2022-11-14 118
(十五)MySQL命令大全 相信大家在编写SQL时一定有一个困扰,就是明明记得数据库中有个命令/函数,可以实现自己需要的功能,但偏偏不记得哪个命令该怎么写了,这时只能靠盲目的去百度,以此来寻找自己需要的命令。 juejin 2022-11-14 106
(十四)MySQL的存储过程与触发器 前面的MySQL系列章节中,一直在反复讲述MySQL一些偏理论、底层的知识,很少有涉及到实用技巧的分享,而在本章中则会阐述MySQL一个特别实用的功能,即MySQL的存储过程和触发器。 juejin 2022-11-14 98
(十三)MySQL引擎:InnoDB为何能替换MyISAM MySQL是一款支持拔插式引擎的数据库,在开发过程中你可以根据业务特性,从支持的诸多引擎中选择一款适合的 juejin 2022-11-13 94
(十二)MySQL内存篇:深入数据库内存与Buffer Pool MySQL是基于磁盘工作的,这句几乎刻在了每个后端程序员DNA里,但它真的对吗?其实答案并不能盖棺定论,你可以说MySQL是基于磁盘实现的,这点我十分认同,但要说MySQL是基于磁盘工作,这点我则抱否定的态度,至于为什么呢?这跟咱们本章的主角:Buffer Pool有关,Buffer Pool是什么?还记得咱们在《MySQL架构篇》中聊到的缓存和缓冲区么,其中所提到的写入缓冲区就位于Buffer Pool中。 juejin 2022-11-13 116
MySQL的一条SQL语句从诞生至结束的多姿多彩历程 SQL语句都诞生于客户端,主要有两种方式产生一条SQL,一种是由开发者自己手动编写,另一种则是相关的ORM框架自动生成,一般情况下,MySQL运行过程中收到的大部分SQL都是由ORM框架生成的,比如Java中的MyBatis、Hibernate框架等。 juejin 2022-11-13 93
(十一) MySQL日志篇之undo-log、redo-log、bin-log入门 其实日志的作用不言而喻,无论是线上排查,亦或是性能优化,几乎都需要从日志中来获得信息作为依据,而MySQL中,很多很多的功能也都需要基于日志实现,比如事务回滚、数据持久化、数据恢复、数据迁移、MVCC机制.....,因此本篇去阐述日志,也是为了方便撰写后续的其他文章。 juejin 2022-11-13 52
MySQL架构篇:自顶向下深入剖析MySQL整体架构 当然,MySQL也不仅仅是唯一的数据库,与它类似的关系型数据库竞品还有很多,例如Oracle、SQLServer、PostgreSQL、DB2....,这其中使用最为广泛的是Oracle,但Oracle实际上并不怎么受程序员欢迎,或者说Oracle并不怎么受中小企业的Boss欢迎,原因嘛大家都清楚,无非因为它收费罢了。 juejin 2022-11-13 87