-
记录一次MySQL两千万数据的大表优化解决过程,提供三种解决方案
所属栏目:[MySql教程] 日期:2019-02-28 热度:58
问题概述 使用阿里云rds for MySQL数据库(就是MySQL5.6版本),有个用户上网记录表6个月的数据量近2000万,保留最近一年的数据量达到4000万,查询速度极慢,日常卡死。严重影响业务。 问题前提:老系统,当时设计系统的人大概是大学没毕业,表设计和sql语句[详细]
-
2月数据库排行榜:MySQL分数增长迅猛,Oracle下降最多
所属栏目:[MySql教程] 日期:2019-02-21 热度:188
DB-Engines 数据库流行度排行榜发布了2月份的数据,看看排名前二十的情况: 一如既往地,整体排名变化不大。最突出的莫过于 MySQL 在上个月增加的分数,增加了 13.02 分,目前总分为 1167.29,稳坐第二名的位置。而万年老大的 Oracle 则依旧保持着每个月分[详细]
-
MySQL误删数据救命指南:必收藏
所属栏目:[MySql教程] 日期:2019-02-21 热度:84
首先看下MySQL误删数据排名最前的几种是: 1.误删文件 2.误删库、表 3.错误全表删除 / 更新 4.升级操作失误 都来看看你命中过几个,hoho。 简单说下我亲手造的一个大事故吧。 那大概是一个春暖花开的季节,我的内心是激动澎湃的,因为已经安排了休假计划。[详细]
-
MySQL每秒570000的写入,如何实现?
所属栏目:[MySql教程] 日期:2019-02-21 热度:113
一、需求 一个朋友接到一个需求,从大数据平台收到一个数据写入在20亿+,需要快速地加载到MySQL中,供第二天业务展示使用。 二、实现再分析 对于单表20亿, 在MySQL运维,说真的这块目前涉及得比较少,也基本没什么经验,但对于InnoDB单表Insert 如果内存[详细]
-
面试前必须要知道的Redis面试
所属栏目:[MySql教程] 日期:2019-02-21 热度:89
今天来分享一下Redis几道常见的面试题: 如何解决缓存雪崩? 如何解决缓存穿透? 如何保证缓存与数据库双写时一致的问题? 一、缓存雪崩 1.1 什么是缓存雪崩? 回顾一下我们为什么要用缓存(Redis): 为什么要缓存 现在有个问题,如果我们的缓存挂掉了,这意味[详细]
-
2019年学MySQL,最佳的10本新书
所属栏目:[MySql教程] 日期:2019-02-02 热度:79
如果你有兴趣学习MySQL,那么,你最好读一些由该领域经验丰富的专家撰写的书籍,下面是一些关于一些MySQL书籍,作者都是经验非常丰富的专业人士,如果你打算在2019年学习MySQL,这些书籍一定是不二之选 MySQL有很多用途,许多程序员都认为它是不可或缺的,[详细]
-
数据库优化渐进的过程,这些你都知道?
所属栏目:[MySql教程] 日期:2019-02-01 热度:126
大家在面试的时候经常会被问到数据库优化的问题,今天给大家总结了几点: 第一阶段 优化sql和索引 这才是调优的第一阶段啊,为什么呢? 因为这一步成本最低啊,不需要加什么中间件。 那步骤是什么样呢?我说个大概 用慢查询日志定位执行效率低的SQL语句 用e[详细]
-
拒向 MongoDB 妥协,AWS 推出替代品 DocumentDB
所属栏目:[MySql教程] 日期:2019-02-01 热度:113
AWS 昨日宣布推出DocumentDB,这是一个与 MongoDB API 兼容的新数据库产品。AWS 将 DocumentDB 描述为一个快速、可扩展且高度可用的文档数据库,旨在与你现有的 MongoDB 应用和工具兼容。实际上,它是一个 MongoDB 的托管版简易替代品,不使用任何 MongoDB[详细]
-
Redis存储总用String?你大概错过了更优的使用方法
所属栏目:[MySql教程] 日期:2019-02-01 热度:109
Redis为我们提供了5种数据类型,基本上我们使用频率最高的就是String,而对其他四种数据类型使用的频次稍弱于String。原因在于: String使用起来比较简单,可以方便存储复杂的对象,使用场景比较多; 由于Redis expire time只能设置在key上,像List、Hash、[详细]
-
NoSQL没落了?NewSQL有机会挑大梁吗?
所属栏目:[MySql教程] 日期:2019-02-01 热度:170
2018年4月20日,苹果宣布开源FoundationDB一款支持多种数据模型、高性能、高可用、可扩展,且具备ACID事务的分布式KV NoSQL系统。FoundationDB已在苹果公司内部的生产环境使用三年,主要用于iCloud上的云存储服务。 苹果于2015年收购开源的FoundationDB并[详细]
-
MySQL数据库设计总结
所属栏目:[MySql教程] 日期:2019-02-01 热度:94
规则1:一般情况可以选择MyISAM存储引擎,如果需要事务支持必须使用InnoDB存储引擎。 注意:MyISAM存储引擎 B-tree索引有一个很大的限制:参与一个索引的所有字段的长度之和不能超过1000字节。另外MyISAM数据和索引是分开,而InnoDB的数据存储是按聚簇(clu[详细]
-
FoundationDB Record Layer 宣布开源,提供关系数据库功能
所属栏目:[MySql教程] 日期:2019-02-01 热度:154
昨日,FoundationDB 数据库宣布开源 FoundationDB Record Layer。既然提到了层(layer)这个概念,我们不妨在这里简单说一下 FoundationDB 和层之间的渊源 。层(layer)源于 FoundationDB 创立之初的理念 FoundationDB 的愿景是从一个简单且强大的核内核开始[详细]
-
大牛是怎么思考设计MySQL优化方案的?
所属栏目:[MySql教程] 日期:2019-02-01 热度:126
在进行MySQL的优化之前,必须要了解的就是MySQL的查询过程,很多查询优化工作实际上就是遵循一些原则,让MySQL的优化器能够按照预想的合理方式运行而已。 图-MySQL查询过程 一、优化的哲学 注:优化有风险,涉足需谨慎 1、优化可能带来的问题 优化不总是对[详细]
-
数据库分库分表,何时分?怎样分?
所属栏目:[MySql教程] 日期:2019-02-01 热度:100
一. 数据切分 关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到1000W或100G以后,由于查询维度较多,即使添加从库、优化索引,做很多操作时性能仍下降严重。此时就要考虑对其进行切分了,切分的目的就在[详细]
-
为什么企业依赖于NoSQL
所属栏目:[MySql教程] 日期:2019-02-01 热度:69
如果你关注大数据科技动向,你对 NoSQL 一定不陌生,NoSQL 是一个分布式数据库。在过去时间,数据存储一直关系型数据库天下,有着良好的控制并发操作、事务功能。虽然 RDBMS 很优秀,但是随着时间的推移就出现了两个关系数据库解决不了的问题:快速增长的[详细]
-
值得收藏:一份非常完整的MySQL规范
所属栏目:[MySql教程] 日期:2019-02-01 热度:104
一、数据库命令规范 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 数据库对象的命名要能做到见名识意,并且最后不要超过32个字符 临时库表必须以tm[详细]
-
高吞吐低延迟的 NoSQL 数据库——Scylla 3.0 发布
所属栏目:[MySql教程] 日期:2019-02-01 热度:56
开源 NoSQL 数据库 Scylla Open Source 发布第 3 个主要版本更新,这个版本提高了查询效率并减少存储的容量需求,尽可能降低维护时间,同时也还加强了整体数据库的执行效率,官方表示,Scylla 是目前性能最高的 NoSQL 数据库,包括布署于生产环境的 Apache[详细]
-
苹果 FoundationDB 开源 CloudKit 使用的数据层
所属栏目:[MySql教程] 日期:2019-02-01 热度:109
苹果公司旗下的 FoundationDB 今天宣布,将开源 FoundationDB 数据记录层,它提供了基于 FoundationDB 的关系数据库语义,具有模式管理,索引功能和丰富的查询功能集。 苹果使用数据记录层为数亿用户提供应用程序和服务,并与 FoundationDB 相结合,构成了[详细]
-
是否值得付费?Oracle,Open JDK等四大JVM性能全面对比
所属栏目:[MySql教程] 日期:2019-02-01 热度:171
市面上可供选择的JVM发行版还是有不少的。选择合适的JVM需要考虑不同的因素。性能是其中一个重要的因素。靠谱的性能研究是很困难的。在本文中,我创建了一个测试,在不同的JVM上执行对比测试。测试程序包括Spring Boot REST应用,使用Prometheus监控JVM并[详细]
-
实用排坑帖:SQL语句性能优化操作策略大全
所属栏目:[MySql教程] 日期:2019-02-01 热度:60
本文会提到52条SQL语句性能优化策略。 1、对查询进行优化,应尽量避免全表扫描,首先应考虑在where及order by涉及的列上建立索引。 2、应尽量避免在where子句中对字段进行null值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特[详细]
-
Redis实现分布式锁的正确姿势
所属栏目:[MySql教程] 日期:2019-02-01 热度:143
一、前言 在我们日常工作中,除了Spring和Mybatis外,用到最多无外乎分布式缓存框架Redis。但是很多工作很多年的朋友对Redis还处于一个最基础的使用和认识。所以我就像把自己对分布式缓存的一些理解和应用整理一个系列,希望可以帮助到大家加深对Redis的理[详细]
-
数十个SQL审核项目后,我总结出了这样一套经验
所属栏目:[MySql教程] 日期:2019-02-01 热度:199
多行业SQL审核落地总结 近年来落地了数十个行业(包含银行、制造业、保险等)的SQL审核项目,在项目对接需求,直到后期验收,完成优化目标的过程中,有一些感悟和总结,本文做一个分享。 首先要明确一下SQL审核的对象范围是针对数据库层面的,涉及性能、安全[详细]
-
大牛出招|分分钟解决MySQL查询速度慢与性能差
所属栏目:[MySql教程] 日期:2019-02-01 热度:77
一、什么影响了数据库查询速度 1.1 影响数据库查询速度的四个因素 1.2 风险分析 QPS:Queries Per Second意思是每秒查询率,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 TPS:是TransactionsPer[详细]
-
B+树 | MySQL索引使用原则
所属栏目:[MySql教程] 日期:2019-02-01 热度:111
MySQL一直了解得都不多,之前写sql准备提交生产环境之前的时候,老员工帮我检查了下sql,让修改了一下存储引擎,当时我使用的是Myisam,后面改成InnoDB了。为什么要改成这样,之前都没有听过存储引擎,于是网上查了一下。 事实上使用不同的存储引擎也是有[详细]
-
分库分表,读写分离后,数据库中间件扮演了一个怎样的角色?
所属栏目:[MySql教程] 日期:2019-02-01 热度:65
分库分表,读写分离会带来哪些问题? 前面一篇文章图解分布式系统架构(看推荐阅读)大概讲了一下分库分表,以及读写分离出现的场景,分库分表为了解决高并发和海量数据的问题。 分库后会出现新的问题 1、跨库join问题 如有2个库,订单库,用户库,要查询[详细]