阿里云【七天深入MySQL实战营】

最近报名了阿里云【七天深入MySQL实战营】。不过一直没时间看【最主要还是自己懒】,看了下课程及答疑信息,感觉应该还可以,分享出来和大家一起学习学习​。现在课程已经完结了,可以一起学习了。

凯哥感觉有用的是从第二天到第六天的课程。来分别看看每天课程内容。

第二天:MySQL高并发场景实战

主讲:阿里元数据库解决方案专家-凌洛

编辑

目录很简单:问题和挑战、系统优化、流程管理和生态工具

编辑

下图是2009年-2019年,每年双十一时候的每秒交易量、每秒支付订单及每年交易额

编辑

是不是很刺激,在这么大的请求下,遇到了哪些问题呢?

编辑

第二天很多内容。这里凯哥就不一一介绍了,我们来看看,学完这一天视频后,同学们的答疑问题:

1:Mysql 一年应该是什么水平?需要知道哪些知识?

2:Mysql 一年应该是什么水平?需要知道哪些知识?

3:Mysql 中分表时,需要组合表查询时,如何做到高效?

4:Mysql 5.7 使用 MHA 无损复制,是否有丢数据的可能?

5:Mysql 中单表大约一亿行数据,只有首列(自增列)为主键,这种设计是因为高并发吗?6:高并发在表设计上有哪些需要注意呢?

7:Mysql 的读写锁怎么使用更好?读写锁的使用场景?

8:高并发的时候,频繁 crud,容易读到旧数据应该怎么办?

9: 在使用过程中,占用内存会逐渐增大,调整思路是怎样的?

10:如何扩展并行写,除了分表还有别的方法吗?

11:热点数据更新具体要怎么做避免死锁之类的问题?

12:能讲讲 rds sql 限流的实现原理不?

13:热点数据更新从 rds 到 redis 是插件还是接口?

14:rds redis 数据怎么保持一致性呀?

15:请问之前有关于 5.6、5.7、8.0 性能的测试,那稳定性呢?

16:mysql分表后,如何对所有子表的联合数据保证高效查询?

17:秒杀场景下,服务器在北京,新疆 和 北京同时抢,怎么保证两边延迟的公平性和防止超卖?

18:为什么mysql不建议使用存储过程?

19:上亿数据并且有聚合的情况?

20:Mysql有个表特别大,40多G,请问单表大小多少保证性能好一些(有大字段)?

21:如果有多个大字段,一般设计表的时候是把大字段放一个表还是分散的好?

22:数据库全量备份会影响写操作,有什么好的方式进行数据备份吗?

23:RDS主备异常的时候会在主库备份的呀?

24:Mysql有个表特别大,40多G,请问单表大小多少保证性能好一些(有大字段)?

还有其他答疑,这里凯哥就不一一罗列出来了。

好了,第二天大致就这些。接下来,我们看看第三天内容。

第三天:mysql Java开发实战

主讲:阿里云技术专家-义泊

课程内容:深入浅出ORM框架MyBatis;连接池框架HikariCP和druid的剖析和最佳实践;Java应用性能问题诊断技巧。

编辑

主要答疑问题:

Q1: MySQL 联合索引所有列的时候,为什么任意条件查询都会命中索引?

Q2: mysql对于如订单主从表开发,订单主表的数量合计,金额合计是查询时通过select sum实时查询好,还是在主表设计合物理字段,当从表数据发生变化时写入物理字段好?

Q3: mysql跨异构库关联查询,如跨sqlserver。有没有sql层面的实现方案,用多数据源+java编码实现很麻烦?

Q4: MySQL 联合索引所有列的时候,为什么任意条件查询都会命中索引?

Q5:复用数据库连接池,mybatis一级缓存会自动释放么?

Q6:分库分表一般建议开发程序改造还是使用中间件透明分片?

Q7: MySQL内存消耗逐渐升高直至OOM,内存参数已限制,该如何自动释放centos下的连接内存占用?

Q8:一个系统应用最多连几个数据源

Q9:问当缓存穿透,多个请求命中同一个锁,怎么保证快速返回,不发生死锁?

Q10: CPU生产火焰图工具只适用JAVA语言么

Q11:我有个问题,前几天遇到公司一个故障,就是网站访问忽然卡动,不是连续的,如果从 Java 方面的话,看那些方面?这个大致会是那几个方面的问题?

Q12:如果服务器cpu到百分之90以上,一般没响应,这时候不重启服务器如何,处理比较好?

Q13:项目中采用druid进行多数据源配置的时候,怎么保持事务一致性

Q14:多张大表(亿级别)inner join,性能如何提高,走了索引的

【开营第四课】【 MySQL查询优化实战】

讲师:苏坡,袋鼠云高级数据库工程师。

课程内容:核心概念及原理;优化流程思路;常见场景下的优化。

编辑

课程大纲:

编辑

第4课时答疑:

Q1:除了 explain,会有好的办法调优 sql 吗?

Q2:之前一直用 sqlserver,如果一个表 tbl,有 A、B 两个字段,且每个字段都建有一个索引,当执行 select * from tbl where A=? And B=? 时,mysql 会同时使用这两个索引查,然后将两个结果合并?

Q3:对于 8.0 的 explain analyze 有什么看法?8.0 的 hash join 之类的很多新特性,越来越接近 oracle,(老师)对于 mysql 的发展有什么看法?

Q4:select * from jdp_tb_trade where seller_nick in (‘’,’’,’’,’’...)。当 in 的集合中数量超过 9 后,会切换索引,导致查询变慢。这是什么原因,得怎么优化?

Q5:数据库达到什么条件时才应该考虑分库分表

Q6:新业务需要添加字段,如果该业务下线。如果多次的话,会有很多的无用字段,这种情况要怎么处理比较好?

Q7:mysql count(*) 数据上千万时候非常慢,又要经常做统计,可以怎么做

Q8:mysql 使用 group by ... order by ... limit [n] 有时候会选择错误的索引,对于这种情况该如何优化?除了使用 force index?

Q9:数据量比较大的时候分页查询应该如何实现?

Q10:查询时以时间顺序排序,在时间字段上建索引有帮助吗?还有其他方案吗?

Q11:一张10亿级别的大表,如何提升 count 的效率

Q12:对索引顺序有建议吗 ?

编辑

【凯哥Java(kaigejava)七天或7天或42】

【开营第五课】【MySQL 开发规约实战】

讲师:芦火,阿里云运维专家。

课程内容:SQL语句编写规范;事务的使用与优化;开发中的常见问题与最佳实践。

疑问解答:

Q1:根据主键进行update ,只修改一个字段,经常出现超过0.5秒的情况,请问这样的问题怎么排查?

Q3:insert插入过慢,几百条记录要插几秒中,有哪些排查思路?

Q6:mysql 优化时候,比如有时候需要对字段做类型转换或者加函数,走不了索引,除了用虚拟列去优化(耗费空间换时间),还有什么优化思路?

Q7:要小表驱动的时候,是要把 ignore 写到 sql 里吗?还有别的方法吗?

Q14:mysql开发在表关联方面有什么技巧和需要注意的地方?对于10张表以上的关联大查询,该如何优化或拆分?

Q17:同一条sql主从执行计划一致,执行时间不一致,这种情况如何优化;还有同一条sql主从计划不一致的问题?

编辑

【开营第六课】【MySQL表和索引优化实战】

讲师:田杰,阿里云高级运维专家。

课程内容:InnoDB表和索引设计最佳实践;索引设计的分析与优化。

主要答疑问题:

2. 在什么场景下,适合建 hash 索引?

3. 运行中生产环境上,myisam 表是否不停机下线直接转换成 innodb,表中有数据,需要注意什么吗?

4. 我公司有张表有两千多万数据,使用的UUID作为主键,没有使用到自增列(这个历史原因),sql 语句:select count(1) cnt from table name where StartDate>=‘2020-11-01’ and StartDate < ‘2020-12-01’ and State=‘C’ and Source=‘Alipay’ 查询大概平均七分钟左右,StartDate,State,Source 都有索引,老师有什么好的优化建议吗?

5. 单 rds,10亿大表,做优化的思路是怎样的?

6. Rds 和 drds,单表的列数多少合适?

7. 因为业务需求,不能使用自增主键,不得不使用还是 UUID 当作主键的时候,怎么操作会更高效一些?

8. Drds 百亿大表如果做查询优化?

10. 关于索引字段,是说 varchar 100 是要比 varchar 250 好很多是吗?所以关于索引字段的类型及长度应该更准确?

11. 请问高可用和主从同步一致性,您一般采用什么架构呢?

14. 表分区可以作为查询优化的方向吗?

16. 20亿条数据的表,加字段,大致会加一个星期左右,加字段会导致表不可用,怎么解决?

18. 数据少不需要加索引,那什么时候加(数据越多增加索引代价就越大)?

19. Where 条件中 like 双边都有 % 号,怎么优化走索引,场景是文本匹配?

阿里云【七天深入MySQL实战营】的更多相关文章

  1. 阿里云CentOS自动备份MySql 8.0并上传至七牛云

    本文主要介绍一下阿里云CentOS7下如何对MySql 8.0数据库进行自动备份,并使用.NET Core 将备份文件上传至七牛云存储上,并对整个过程所踩的坑加以记录. 环境.工具.准备工作 服务器: ...

  2. 阿里云服务器上安装mysql的心路历程(博友们进来看看哦)

    在阿里云花了100买了一台云服务器,配置如下: CPU: 1核 内存: 512MB 数据盘: 0G 带宽: 1Mbps 阿里云服务器安装mysql搞得我想吐血,搞了一个多星期,现在才搞好,而且,还有许 ...

  3. 阿里云下Linux服务器安装Mysql、mongodb

    阿里云下Linux服务器安装Mysql.mongodb 一.MySQL的安装和配置 1.安装rpm包 rpm -Uvh http://dev.mysql.com/get/mysql-community ...

  4. jdbc连接阿里云服务器上的MySQL数据库 及 数据库IP限制

    问题1:Jdbc 如何连接阿里云服务器上的MySQL数据库? 解决: 上截图: 其中IP是阿里云服务器的公网IP地址. 问题2:   刚开始接手开发的时候,使用Navicat连接阿里云服务器上的数据后 ...

  5. 阿里云Linux服务器安装 nginx+mysql+php

    阿里云Linux服务器安装 nginx+mysql+php步骤1.登录服务器2.下载安装包3.将安装包上传到服务器的/home目录下 注:使用rz sz命令进行本地和服务器间的上传.下载,安装命令yu ...

  6. 使用Navicat连接阿里云服务器上的MySQL数据库=======Linux 开放 /etc/hosts.allow

    使用Navicat连接阿里云服务器上的MySQL数据库   1.首先打开Navicat,文件>新建连接> 2,两张连接方法 1>常规中输入数据库的主机名,端口,用户名,密码 这种直接 ...

  7. 确保数据零丢失!阿里云数据库RDS for MySQL 三节点企业版正式商用

    2019年10月23号,阿里云数据库RDS for MySQL 三节点企业版正式商用,RDS for MySQL三节点企业版基于Paxos协议实现数据库复制,每个事务日志确保至少同步两个节点,实现任意 ...

  8. 阿里云上安装mysql步骤/ 阿里云ECS搭建Java+mysql+tomcat环境

    使用阿里云ECS挺长一段时间了.这两天碰巧朋友小白让我一步一步教他在ECS上搭建Java+mysql+tomcat环境,所以把在这里把步骤在这简单整理了一下,以便需要的人查阅. 我购买的阿里云服务器系 ...

  9. 阿里云服务器重启后mysql不能启动的问题

    环境:阿里云ECS服务器上,Ubuntu linux 12.04,64位版.MySQL 5.1. 首先查看/etc/rc.local,可以看到Ubuntu通过/etc/init.d/mysqld脚本启 ...

  10. 阿里云CentOS-7.2安装mysql

    我下载的阿里云的服务器系统centos7.2是纯内核版本,并没有其他的工具,所以这个系统是非常干净的.所以我就需要给系统安装一一些工具,来方便系统的管理与操作,我们上面讲到了关于服务器的yum的配置在 ...

随机推荐

  1. 韦东山freeRTOS系列教程之【第六章】信号量(semaphore)

    目录 系列教程总目录 概述 6.1 信号量的特性 6.1.1 信号量的常规操作 6.1.2 信号量跟队列的对比 6.1.3 两种信号量的对比 6.2 信号量函数 6.2.1 创建 6.2.2 删除 6 ...

  2. gdb 根据c语言二进制文件进程号查看内部多线程任务

    C语言二进制文件 a 编译时添加了 -g (gdb 调试), 但是 gdb a 这种方式有时不容易复现一些场景.这时可以先正常启动 a, 然后根据 a 的进程号启动gdb调试. # 1. 找到程序进程 ...

  3. Java-Session服务器端会话技术

    Session 概念:服务器端会话技术,在一次对话的多次请求间共享数据,将数据保存在服务器端的对象中.HttpSession 快速入门: 获取Session对象 * HttpSession sessi ...

  4. Zabbix 5.0 LTS URL 健康监测

    更多细节详情看[zabbix官方文档] 需求 Zabbix 的URL健康监测功能允许你检测 Web 地址是否可用.正常工作以及响应速度.这对于监控网站的可用性和性能非常有用.例如,你可以监控公司网站. ...

  5. oeasy教您玩转vim - 59 - # 编辑总结

    ​ [Github地址] (https://github.com/overmind1980/oeasyvim) [Gitee地址] (overmind1980/oeasyvim) [蓝桥实验楼 邀请码 ...

  6. 常见的SQL数值型数据处理函数

    在数据驱动的时代,SQL 已成为数据分析和管理中不可或缺的工具.无论是处理简单的查询还是复杂的数据分析,SQL 都能帮助我们高效地完成任务. 然而,在处理数值型数据时,你是否感到过困惑,不知道如何运用 ...

  7. 为什么StampedLock会导致CPU100%?

    StampedLock 是 Java 8 引入的一种高级的锁机制,它位于 java.util.concurrent.locks 包中.与传统的读写锁(ReentrantReadWriteLock)相比 ...

  8. 【JavaScript高级01】JavaScript基础深入

    1,数据类型 JavaScript将数据分为六大类型,分别为数值类型(number).字符串类型(string).布尔类型(boolean).undefined(定义未赋值).null(赋值为空值). ...

  9. Python 结合opencv实现图片截取和拼接

    实践环境 python 3.6.2 scikit-build-0.16.7 win10 opencv_python-4.5.4.60-cp36-cp36m-win_amd64.whl 下载地址: ht ...

  10. NIO操作文件读写

    第一章 第一节,Buffuer 案例一  从buffur 读出数据, 创建了一个 FileInputStream 对象,并通过调用 getChannel() 方法获取了与之关联的 FileChanne ...