MySQL的学习图谱(初版)
周末总结了下关于MySQL学习的一些思路,当然还有很多需要补充的地方。我是侧重从优化的角度来总结的一部分内容,所以数据迁移,数据管理的部分就和很多地方糅合在了一起。总结之后突然发现对于开发规范和建议的地方自己感触还蛮深。...
MySQL索引条件下推的简单测试
自MySQL 5.6开始,在索引方面有了一些改进,比如索引条件下推(Index condition pushdown,ICP),严格来说属于优化器层面的改进。如果简单来理解,就是优化器会尽可能的把indexcondition的处理从Server层下推到存储引擎层。举一个例子,有一个表中含有组合索引idx_cols包含(c1,c2,…,cn)n个列,如果在c1上存在范围...
Oracle 12cR2中的ADG会话保留特性
Oracle 12cR2中有一个不错的特性,那就是Active Data Guard会话保留,原本的叫法是Preserving Active Data Guard Application Connections 怎么理解呢,比如在Active Data Guard上的连接会话,在switchover的过程中会话连接会始终保持不会中断。这一点听起来就很有特点,能够提高用户...
Oracle和MySQL中短小精悍的SQL
如果让你写一个简单牛叉的SQL,数据库类型不限,你会写出什么样的SQL语句。Oracle 如果是Oracle,我就写个drop table dual;这个SQL看起来很简单,包含的信息量还是蛮大的,首先对于dual表你得有一定的认识和了解,而这个视图和一般的数据字典不同,如果删除之后,直接会导致数据库不可用。恢复...
IP地址定位区间的问题分析(r13笔记第9天)
以前写过一篇Oracle中关于IP地址定位的问题分析,最后引申出了一系列的问题。当时问题紧急严峻,抓取了10053事件定位源头,想出了一个解决妙法,还自鸣得意了下,结果忙活完之后看看行业里的解决方案都大体如此,我的心凉了半截。 我总是希望找到一些与众不同的点来解读这一类问题,结果在...
MySQL中需要注意的字段长度问题
在MySQL的表结构设计中,突然想起来几个地方碰到的问题比较多,大体来说一个就是字符集,一个就是数据类型。而字符集和数据类型结合起来,就有一个蛮有意思的细节,那就是行长度的问题。比如我们创建一个表使用了varchar的类型,如果指定为gbk,表里含有一个字段,可以指定为32766字节,如果再长一些就不行了。...
一个跨平台数据迁移的方案优化
如果有一套环境,业务优先级很高,服务器的服役时间比我工作时间都长,现在需要迁移到X86平台,而且经过评估,如果能够升级数据库的软件版本,可以使用到更多的特性和功能。这套环境的数据量大概是800G,停机维护时间在2个小时的样子,对于很多公司来说,尽可能缩短维护窗口时间,提前起服就意味着有更多的...
再见了,老铁
在青春萌动的时候,我非常喜欢郭敬明的文字,就如同看现在的年轻人喜欢《小时代》一样不可理解。郭敬明的书我记得有一篇得叫做 《一个人》,大体讲的就是几个玩得非常好的朋友,最后因为各种各样的原因,最后各奔东西,随着时间的推移,而慢慢生疏,最终成了陌生人。这种感觉我在大学里感触很深,于是我花了好几...
高考数据分析和读书感悟
高考成绩的数据分析昨天分析了下高考的数据。通过数字看高考分数,你可能真不了解高考成绩,截止昨天还有4个省份还没有公开,今天我更新了下,收集了目前能收集到的数据,做了一个基本的分析,也有了一些自己的理解。以全国卷一为例,几个省份的分数线一本二本的情况一目了然。红色是一本线,浅绿色为...
通过数字看高考分数(r13笔记第4天)
最近总是看到很多高考的信息,但是信息相对较散,我一直没有看到一个完整的信息,算了,还是自己整理一份。 首先高考的试卷不是一张卷统一,而是分了很多的类别。你可以理解为主要还是因为不同地区经济、教育发展不均衡的原因。2017年高考试卷的分类11、全国Ⅰ卷地区:河南、河北、山西、江西...
MySQL中一个文档疏漏的分析测试(r13笔记第3天)
最近看到Percona的工程师Agustín写了一篇博客,是关于MySQL触发器和可更新视图的一个观点,具体链接可以参考 https://www.percona.com/blog/2017/06/14/triggers-and-updatable-views/ 官方文档对于触发器的基本描述是这样的:Important: MySQL triggers activate only for changes made to...
一个复杂的数据需求的MySQL方案
前些天处理了一个需求,当时的数据库环境是Oracle,我算是想尽了Oracle相关的方案,而且在问题的处理过程中,还在不断的琢磨,如果失败了还有什么其他的方案。 所以尽管Oracle这么一个成熟的商业数据库,做起来还是有些难度,需要一些额外的技巧,比如规避bug,间接实现需求等。 &n...
制定新的计划,走起
今天继续设想了下最近需要做的事情,深深觉得没有计划,就没有动力。 之前100天的笔记中,内容上已经有了改进和尝试,MySQL的文章已经明显多于Oracle,占到了30%以上的比例,我希望在这100天里,这个比例能够占到40%,而剩下的空间留给开发语言(20%),生活随笔(20%),Oracle 10%,剩下的10%作为浮动指标。...
总结一下这一百天来的收获(r12笔记第100天)
1200多天,听起来是一个蛮吉利的数字,也伴随了我1200多个日日夜夜,无论是出差还是节假日,我都尽量腾出时间来写一些东西,就这样不光有技术博客,还有了游记,生活感悟和日常琐事的思考。 当然,维护这么一个自媒体的号对我来说,有得有失,是得到的多还是失去的多,我觉得是一个平衡。就如同...
Oracle和MySQL竟然可以这么写这样的SQL?(r12笔记第99天)
今天看到Franck Pachot? 发了一个Twitter,意思是Oracle里的SQL还能这么写。猛一看确实让人有些意外。禁不住诱惑,自己也尝试了一番。我现在12cR2的环境中测试了一下。Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production尝试上面的步骤,先来看看dual表。SQL> select co...
一种Oracle快速的整合迁移方案(r12笔记第98天)
最近在分析一个迁移案例的时候,突然多了一些额外的想法,也算是对原有方案的一个补充。 比如存在两个数据库 peak和esales,彼此是独立的业务,所幸两者也没有用户的冲突等,都在10g版本,如果需要把他们整合到11g的环境中,迁移的方案就是一个重中之重。 因为这两个库的数据量不大,都...
花卉世界大观园和杂技之游
最近的周末一直在忙,总算抽出来了一个周末来,我就计划着和家里人出去玩玩,想了几个路线,最后定格为早上去花卉世界大观园,南四环,离我住的地方不远,下午计划去朝阳剧院看杂技。 我们赶了个大早进去,就是怕中午的时候太热。花卉世界大观园里不光有各种植物,还有很多配套的游乐设备,...
一个复杂的数据需求的创新优化(r12笔记第96天))
今天处理了一个蛮有意思的案例,正如我给开发同学所说的那样,方案有很多,但是我们需要明确需求之后,找到一个最合适的需求。 业务同学反馈,数据库中有一个表数据量很大,因为要做一期活动,需要近期的数据,以前的旧数据可以考虑清理。清理多少旧数据呢,差不多是99%的量,数据量有多大...
MySQL Shell的简单介绍(r12笔记第95天)
MySQL Shell是在官方版本5.7.12推出,工具的初衷本身都是为了解决一类问题,想必官方从很多方面了解到工具的使用情况,支持的开发语言太多,众口难调,所以这么个命令行工具就出来了,从它的推出,足以看到MySQL的格局,它是把很多能做不能做得都揽过来自己做了。根据官方的shell,python,原生SQL,Javascript等,格...
今天的十点想法(r12笔记第94天)
今天就说点最近和我相关的一些事情吧。简单想了下有近十多件事情想和大家说说。人的想法也是如此奇妙,说不定明天的一些想法还是会变,但是有了方向也就不再迷茫。 内容上我是不会刻意做硬广软广,人生如戏,重在演技,套路得人心实在太累,我就是说说这么几件事情而已。1)新书再版 &nbs...