2021
03-30
03-30
MySQL 线上数据库清理数据的方法
01场景分析 今天下午,开发的同事提来一个需求,需要在线上要删除一些数据记录,简单看了看数据的分布,大概是要删除数据表中的两千七百多万条记录,数据表的总记录是两千八百多万,也就是说,要删除的记录占了总记录的绝大部分比重,两千七百多万的数据记录,要是删除的话,使用的时间是相当长的,对线上的业务肯定会造成影响。这里将实际的应用案例简单重构为以下方法:mysql>selectdate,count(*)fromtest.tbl_agrou...
继续阅读 >
直接po代码和案例#创建表的时候写注释CREATETABLEuserinfo(idINTCOMMENT'编号',unameVARCHAR(40)COMMENT'用户名',addressVARCHAR(120)COMMENT'家庭住址',hobbyVARCHAR(200)COMMENT'爱好')COMMENT='用户信息表';#修改表的注释ALTERTABLEuserinfoCOMMENT'用户信息资料表';#修改字段的注释,注意:字段名和字段类型照写就行ALTERTABLEuserinfoMODIFYCOLUMNunameVARCHAR(40)COMMENT'姓名';#查看表...
以下是基于我结合B+树的数据结构和对实验结果的推测作出的判断,如有错误,恳请指正!今天实验了一下MySQL的count()操作优化,以下讨论基于mysql5.7InnoDB存储引擎.x86windows操作系统。创建的表的结构如下(数据量为100万):首先是关于mysql的count(*),count(PK),count(1)哪个快的问题。实现结果如下: 并没有什么区别!加上了WHERE子句之后3个查询的时间也是相同的,我就不贴图片了。之前在公司的时候...
一、概述在MySQL中,我们可以使用慢查询日志或者showprocesslist命令等方式定位到执行耗时较长的SQL语句,在这之后我们可以通过EXPLAIN或者DESC命令获取MySQL如何执行SELECT语句的信息,包括在SELECT语句执行过程中表如何连接和连接的顺序1、explain语句测试explain+select语句即explain命令的使用方式2、explain结果中各列的说明下面,将对这些列逐一进行讲解二、explain之id列1、环境准备2、explain中的id列...