随笔分类 -  MySQL

摘要:分库分表,是企业里面比较常见的针对高并发、数据量大的场景下的一种技术优化方案,也是一个非常高频的面试题。但是,因为很多人其实并没有非常丰富的分库分表的经验,所以能把这个问题回答得比较好的人其实还挺少的。 那么,本文就来试图把关于分库分表的事情,一次性讲个清楚。 阅读全文
posted @ 2022-11-22 23:47 古道轻风 阅读(957) 评论(0) 推荐(1) 编辑
摘要:数据库选型是一件很大的事情,也是一件很头疼的事情。 很多企业并没有数据库的选型标准,或者并不了解业务需要什么样的数据库。 很多企业的数据库是开发说了算,熟悉什么就用什么,很多选型失误,导致后期非常尴尬的局面。 那么数据库选型要注意什么呢? 列举一些例子,取自如下文档 阅读全文
posted @ 2022-10-17 13:08 古道轻风 阅读(531) 评论(0) 推荐(0) 编辑
摘要:在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多SQL语句开始暴露出性能问题,对生产的影响也越来越大,有时可能这些有问题的SQL就是整个系统性能的瓶颈。 阅读全文
posted @ 2022-10-09 22:14 古道轻风 阅读(158) 评论(0) 推荐(0) 编辑
摘要:1)对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2)应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3)应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引 阅读全文
posted @ 2022-10-09 20:56 古道轻风 阅读(865) 评论(0) 推荐(0) 编辑
摘要:工作中总是遇到数据存储相关的 Bug 工单,新需求开发设计中也多多少少会有数据模型设计和存储相关的问题。经过几次存储方案设计选型和讨论后发现需要有更全面的思考框架。 日常开发中常用的存储方案选型很多都是 “拿来主义” 的,凭借着经验、习惯选用,但对它们的细节特性或约束少有研究。 除了手边会用的存储方案,也应该关注市面上更合适的存储方案。 一定的技术预研和储备能够帮助未来更好的技术方案设计。 故写了这篇文章,抛出我的观察和思考,希望日后可以将一些更先进 (合适) 的技术引入公司业务,助力业务发展。 阅读全文
posted @ 2022-09-05 08:33 古道轻风 阅读(449) 评论(0) 推荐(0) 编辑
摘要:本篇介绍SQL:2016(ISO/IEC 9075:2016)标准中定义的序列生成器(Sequence generator)和相关操作,以及六种主流数据库中的实现及差异:Oracle、MySQL、Microsoft SQL Server、PostgreSQL、Db2、SQLite。 阅读全文
posted @ 2022-08-15 12:47 古道轻风 阅读(956) 评论(0) 推荐(0) 编辑
摘要:SQL 作为关系型数据库的标准语言,是 IT 从业人员必不可少的技能之一。SQL 本身并不难学,编写查询语句也很容易,但是想要编写出能够高效运行的查询语句却有一定的难度。 查询优化是一个复杂的工程,涉及从硬件到参数配置、不同数据库的解析器、优化器实现、SQL 语句的执行顺序、索引以及统计信息的采集等,甚至应用程序和系统的整体架构。本文介绍几个关键法则,可以帮助我们编写高效的 SQL 查询;尤其是对于初学者而言,这些法则至少可以避免我们写出性能很差的查询语句。 以下法则适用于各种关系型数据库,包括但不限于:MySQL、Oracle、SQL Server、PostgreSQL 以及 SQLite 等。 阅读全文
posted @ 2022-08-15 08:35 古道轻风 阅读(328) 评论(0) 推荐(1) 编辑
摘要:携程酒店订单系统的存储设计从1999年收录第一单以来,已经完成了从单一SQLServer数据库到多IDC容灾、完成分库分表等多个阶段,在见证了大量业务奇迹的同时,也开始逐渐暴露出老骥伏枥的心有余而力不足之态。基于更高稳定性与高效成本控制而设计的订单存储系统,已经是携程在疫情后恢复业务的必然诉求。 目前携程酒店订单系统,在着在业务高增长的同时,也面临着信息读写管理能力受制于数据库自身性能与稳定性的窘境。综合分析,一则为携程服役了十多年的SQLServer服务器集群的磁盘容量设计,已经跟不上时下新增订单量的空间诉求;二则在系统能力提升上造成了各大业务系统巨大的底层瓶颈与风险,同时又相比业界主流已基于MySQL架构设计存储系统而言,我们的订单存储系统仍基于SQLServer构建也整体推高了运营成本。 为了支撑未来每日千万级订单的业务增长目标,同时满足高可用、高性能、高可扩展的高效成本控制期望,我们为酒店部门的订单DB所有访问开发并落地了一套稳定且可靠的统一中间件封装方案,对现状收敛并提供了全局统一的热点缓存系统,彻底解决了当下订单上层应用与数据库间直连的方案缺陷。 阅读全文
posted @ 2022-08-09 21:14 古道轻风 阅读(239) 评论(0) 推荐(1) 编辑
摘要:对于 MySQL 数据库作为各个业务系统的存储介质,在系统中承担着非常重要的职责,如果数据库崩了,那么对于读和写数据库的操作都会受到影响。如果不能迅速恢复,对业务的影响是非常大的。本文我将分享MySQL 双主 + Keepalived 的高可用落地和踩坑之路。 阅读全文
posted @ 2022-06-25 21:48 古道轻风 阅读(393) 评论(0) 推荐(0) 编辑
摘要:由于MHA(mha4mysql-manager)工具在2018年已经停止维护更新,且不支持GTID复制模式,在原版基础上增补功能难度较大,因此考虑将其重构。 阅读全文
posted @ 2022-05-03 21:35 古道轻风 阅读(370) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示