MySQL
文章平均质量分 66
小灯数据-脚本小王子
深圳小灯数据科技有限公司
展开
-
MySQL快速生成大量测试数据2(脚本一键生成分表数据)
前面文章《MySQL快速生成大量测试数据(100万、1000万、1亿)》介绍了怎么样快速生成测试数据,有朋友反馈说存在三个问题: 生成128个分表的测试数据敲到手累; 生成的测试数据虽然有离散分布,但随着时间的增长数据量不增反降,不符合大多数线上业务的增长趋势; 生成的测试数据部分超过当前日期。 具体表现如下图所示: 小王子深知做人要低调,但像我这种有才华的人,无论去到哪,都像漆黑中的萤火虫一样,那么鲜明,那么出众...... 好吧,废话少说,再不原创 2021-08-09 18:57:00 · 2153 阅读 · 0 评论 -
MySQL8.0复合索引中的跳过扫描范围访问方法
MySQL8.0有一种复合索引可以跳过扫描范围访问方法,什么意思呢?简单的说,对于复合索引(a,b,c),我们以往常说“where a=xx and b=xx”是可以用到索引,但“where b=xx and c=xx”是用不到索引的。但MySQL8.0中,后者也是可以用到索引了。 我们建一张测试表,其测试数据是104万,如下:root@localhost|test>sele...原创 2020-04-06 01:12:11 · 706 阅读 · 1 评论 -
一种快速取得binlog开始时间的方法
我们想知道一个binlog的开始时间和结束时间,往往是通过binlog文件的上一个文件的文件时间作为当前binlog的开始时间,当前binlog的文件时间作为结束时间,例如:[root@VM_0_6_centos binlog]# ll -lhrttotal 163M-rw-r----- 1 mysql mysql 2.9K Mar 30 01:35 binlog.000082-r...原创 2020-04-04 02:53:53 · 738 阅读 · 0 评论 -
MySQL的analyze table和optimize table对表进行定期优化
1、analyze table优化表的统计信息mysql> show index from t;+-------+------------+---------------------+--------------+-----------------+-----------+-------------+----------+--------+------+------------+--...原创 2020-04-01 02:40:11 · 6576 阅读 · 1 评论 -
MySQL快速生成大量测试数据(100万、1000万、1亿)
这种做法生成的测试数据相对比较符合实际,代码都有注释,这里就不多说了,代码如下:#建测试表drop table if exists t;CREATE TABLE t ( id int NOT NULL AUTO_INCREMENT PRIMARY KEY comment '自增主键', dept tinyint not...原创 2020-03-31 19:51:47 · 13992 阅读 · 7 评论 -
MySQL的SQL模式sql_mode
一、默认的SQL模式 MySQL 8.0的默认SQL模式为:ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION ONLY_FULL_GROUP_BY:使用group by时,select的字段必须在gro...原创 2020-03-30 03:23:29 · 1583 阅读 · 0 评论 -
数据库里怎样根据出生日期计算精确年龄
网上有很多人都在问怎样根据出生日期计算出年龄,回答的人很多,但大部份都是用年减年的方式去算年龄,这样误差就太大了,我们现在计算精确年龄的思路是:年减年后,再对比月日,月日未达的,再减一年就OK了。SQL Server计算精确年龄:select datediff(year,Birtyday,getdate()) - case when datediff(day,dateadd(year,date原创 2009-10-15 02:43:00 · 16044 阅读 · 3 评论 -
mysql的varchar大字段性能研究
我们知道,innodb的一个页是16K(16*1024=16384字节),如果一条记录占的字节数大于16K,意味着一个页无法装下一条记录,这种情况下mysql是如何处理的呢? 在回答这个问题之前我们先来做一个实验: test1.sql与test2.sql均有10万条相同的insert语句,两表结构也大致相同,仅仅是a字段相差4字节,但插入性能差异却是如此大。 在innodb原创 2014-03-14 12:43:54 · 3752 阅读 · 0 评论