最近,在【DBA驿站】知识星球(文章最后会介绍一下是什么)里,讨论了几个话题,这篇文章选其中两个。
1 模拟两个DBA实战场景
昨天,在星球里发起了一个这样的话题:
我们来模拟两种DBA实战场景,大家讨论一下自己的解决方法:
场景一:云上的MongoDB和Redis的数据,需要时不时导入到一套测试环境,方便研发测试一些功能,你会怎么做?
场景二:某个业务,自建的MySQL数据库,要时不时查看某个用户指定历史时间的数据(类似上个月8号9点整这个用户的数据是怎样的),只要求整点的,假设用户数据就是对应某张表的某一条记录,你计划怎么实现?
大家可以选一个擅长的讲一下自己的思路。
其中,有两位星友参与了评论:
2 MySQL 停电为什么会导致坏页?
上周,在星球内发布了下面这个主题:
之前小编在星球内解析过一个面试题:
MySQL 停电为什么会导致坏页?
当时我写的解析是:
当脏页没有及时刷新到磁盘,这个时候正好停电了,那么这些未写入磁盘的数据就会丢失。
在数据库重启时,如果检测到页的磁盘版本与缓冲池中的版本不一致,InnoDB 会认为该页已损坏。
还有可能文件系统损坏,影响到数据文件的完整性。
上周,邀请了丁奇大佬进入了星球,他微信私聊我,帮我纠正了这个问题:
以下是丁奇老师的原话:
数据库重启之后,因为内存被清空过,所以InnoDB没机会发现“磁盘版本与缓冲池版本不一致”,主要是这个描述。
这个题目如果是面试官问的,应该是要考察InnoDB page size和操作系统数据单元的关系。
就是我会这么回答
“操作系统写盘的数据单位是4k,而一个InnoDB page是16k,所以在掉电的时候,就存在一个数据库只写了1/2/3个4k的情况,这样这个page的checksum跟内容就对不上,也就是坏页”
这里提一下,如果有想学MySQL内核的,可以看下今天另外发布的一篇文章,丁奇老师带队。
3 说下【DBA驿站】知识星球
为什么要建这个星球?
1 我们希望提供个平台,讨论交流DBA的相关内容,比如专业知识、项目实战等。
2 求职面试,一方面会分享DBA相关的面试题,也会分享一些简历、面试技巧。
星球成员的权益
权益1 加入即可查看“DBA面试宝典:大厂真题揭秘”专栏
里面包括:
多个大厂DBA的面试真题;
大厂DBA嘉宾给星球成员的模拟面试真题;
星球学员近期去面试的真题等。
权益2 问题讨论交流或者围观
类似上面两个场景,知道的,可以发表一下自己的看法,不知道的或者不想评论的,可以围观一下。
比如市面上一些图文专栏,大家就很喜欢看留言区其他人怎么讨论的。
权益3 免费陪伴群
加过其他知识星球的都知道,100以内的知识星球,很少会有送陪伴群的。
加入【DBA驿站】就可以送免费陪伴群。
群里大多数都是DBA,大家也能在里面交流DBA问题以及求职等。
权益4 所有星友都能发帖
目前有部分星球星友是不能发帖只能评论的,只能是合伙人或者嘉宾发。
我感觉是不方便大家交流的,【DBA驿站】欢迎各位星友发言讨论技术问题。
怎样加入?
领取下方优惠券购买,
原价108,券后58。
加入 3 天内不满意可以全额退款。
进入星球后,访问下方链接,即可直接跳转到权益1中的DBA面试宝典专栏:
https://t.zsxq.com/195kO9AzF