随笔分类 -  mysql

摘要:链接:https://www.zhihu.com/question/445644612/answer/1742967478 好问题。这里的关键点在于:对同一行数据你可能同时需要多个历史版本的数据 以下讨论以MySQL的InnoDB引擎为例 在InnoDB中,有三种日志跟事务的ACID关系都很大: u 阅读全文
posted @ 2025-02-08 14:35 甜菜波波 阅读(5) 评论(0) 推荐(0) 编辑
摘要:一、mysql中不同位置增加字段 增加字段(在特定的字段后增加) alter table 表名 add 需要修改/增加的信息 afer 字段名(在哪个字段后增加) alter table dept Add column name varchar(20) not null default 0 AFTE 阅读全文
posted @ 2023-08-03 13:54 甜菜波波 阅读(2904) 评论(0) 推荐(0) 编辑
摘要:前置知识 在 MySQL 中,GROUP BY 关键字可以根据一个或多个字段对查询结果进行分组 在有 GROUP BY 操作中,SELECT 后面接的结果集字段只有两种:要么就只有 GROUP BY 后出现的字段,要么就是 GROUP BY 后出现的字段+聚合函数的组合 常用的五种聚合函数:MIN( 阅读全文
posted @ 2023-08-03 13:40 甜菜波波 阅读(1286) 评论(0) 推荐(0) 编辑
摘要:sql执行顺序:from on join where group by having select distinct union order by 别名的使用: SELECT download_type as type,count(*) from download GROUP BY type 正常来 阅读全文
posted @ 2023-08-03 13:35 甜菜波波 阅读(28) 评论(0) 推荐(0) 编辑
摘要:mysql: alter table `tbname` add `id` bigint not null auto_increment first, add primary key (`id`); 阅读全文
posted @ 2023-04-27 10:31 甜菜波波 阅读(92) 评论(0) 推荐(0) 编辑
摘要:SELECT * FROM pre_forum_post WHERE tid=6584344 AND `inv`='0' AND `uid`='6547981' ORDER BY dateline DESC limit 4 ; 上面一条正常执行需要 16-20 秒. SELECT * FROM pr 阅读全文
posted @ 2023-04-21 17:41 甜菜波波 阅读(487) 评论(0) 推荐(0) 编辑
摘要:调优一个sql语句,在语句本身是很简单的查询 select * from a where id > 1 order by addtime desc limit 10 查询的结果集很小 只有10 修改为 limit 1后,依然很慢大概2s的查询时间。 explain 发现没有使用索引,去掉limit后 阅读全文
posted @ 2023-04-21 17:18 甜菜波波 阅读(287) 评论(0) 推荐(0) 编辑
摘要:1、复制表结构及数据到新表CREATE TABLE 新表SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删除。不过这种方法的一个最不好的地方就是新表中没有了旧表的primary key、Extra(auto 阅读全文
posted @ 2022-09-08 10:19 甜菜波波 阅读(3298) 评论(0) 推荐(0) 编辑
摘要:{"contractStatusName":"拒签","msg":"操作成功","reason":"123","signers":[{"signName":"123","signStatus":4,"phoneNum":"123","userType":1,"signCode":"123",&quo 阅读全文
posted @ 2022-06-13 11:26 甜菜波波 阅读(124) 评论(0) 推荐(0) 编辑
摘要:问题:请讲下mysql中binlog、undolog、redolog三种日志的区别 分析:mysql中这三种日志很常见,也是面试中涉及比较多的方面,要理解清楚这三种日志的定位及区别; 回答要点: 主要从以下几点去考虑 1、三种日志的作用分别是什么; 2、三种日志解决的问题; 3、三种日志分别是什么时 阅读全文
posted @ 2022-04-01 11:20 甜菜波波 阅读(326) 评论(0) 推荐(1) 编辑
摘要:前言 面试官:来说说,一千万的数据,你是怎么查询的? B哥:直接分页查询,使用limit分页。 面试官:有实操过吗? B哥:肯定有呀 此刻献上一首《凉凉》 也许有些人没遇过上千万数据量的表,也不清楚查询上千万数据量的时候会发生什么。 今天就来带大家实操一下,这次是基于MySQL 5.7.26做测试 阅读全文
posted @ 2022-03-30 17:13 甜菜波波 阅读(216) 评论(0) 推荐(0) 编辑
摘要:/*上个月今天的当前时间*/ select date_sub(now(),interval 1 month) /*上个月今天的当前时间(时间戳)*/ select UNIX_TIMESTAMP(date_sub(now(),interval 1 month)) /*上个月的第一天*/ select 阅读全文
posted @ 2022-02-14 15:35 甜菜波波 阅读(2689) 评论(0) 推荐(0) 编辑
摘要:前言 近期开发与钱相关的项目,在高并发场景下对数据的准确行有很高的要求,用到了for update,故总结一波以便日后留恋。 for update的使用场景 如果遇到存在高并发并且对于数据的准确性很有要求的场景,是需要了解和使用for update的。 比如涉及到金钱、库存等。一般这些操作都是很长一 阅读全文
posted @ 2021-01-28 15:08 甜菜波波 阅读(5004) 评论(0) 推荐(0) 编辑
摘要:一、InnoDB如何解决幻读 幻读:在InnoDB的可重复度隔离级别下,使用当前读,一个事务前后两次查询同一个范围,后一次查询会看到期间新插入的行; 幻读的影响:会导致一个事务中先产生的锁,无法锁住后加入的行,会产生数据一致性问题; 产生幻读的原因:行锁只能锁住一行,不能避免新插入的记录; 解决幻读 阅读全文
posted @ 2020-11-20 10:45 甜菜波波 阅读(2557) 评论(0) 推荐(0) 编辑
摘要:MySQL入门篇(六)之mysqldump备份和恢复 一、备份单个数据库 1、备份命令:mysqldump MySQL数据库自带的一个很好用的备份命令。是逻辑备份,导出 的是SQL语句。也就是把数据从MySQL库中以逻辑的SQL语句的形式直接输出或生成备份的文件的过程。 单实例语法(Syntax): 阅读全文
posted @ 2020-09-23 18:40 甜菜波波 阅读(644) 评论(0) 推荐(0) 编辑
摘要:B树是一种多路自平衡搜索树,它类似普通的二叉树,但是B书允许每个节点有更多的子节点。B树示意图如下: Paste_Image.png B树的特点: (1)所有键值分布在整个树中 (2)任何关键字出现且只出现在一个节点中 (3)搜索有可能在非叶子节点结束 (4)在关键字全集内做一次查找,性能逼近二分查 阅读全文
posted @ 2020-09-22 14:24 甜菜波波 阅读(750) 评论(0) 推荐(0) 编辑
摘要:有这样一张表,表数据及结果如下: school_id school_name total_student test_takers 1239 Abraham Lincoln High School 55 50 1240 Abraham Lincoln High School 70 35 1241 Ac 阅读全文
posted @ 2020-05-19 22:40 甜菜波波 阅读(2810) 评论(1) 推荐(0) 编辑
摘要:基本原理 MVCC的实现,通过保存数据在某个时间点的快照来实现的。这意味着一个事务无论运行多长时间,在同一个事务里能够看到数据一致的视图。根据事务开始的时间不同,同时也意味着在同一个时刻不同事务看到的相同表里的数据可能是不同的。 基本特征 每行数据都存在一个版本,每次数据更新时都更新该版本。 修改时 阅读全文
posted @ 2019-12-17 10:39 甜菜波波 阅读(415) 评论(0) 推荐(0) 编辑
摘要:回复1:一般FOR UPDATE用在PL/SQL的游标里,它的作用就是一个行级锁(对游标里所有的记录),如果其他进程要更新这个游标行级锁里的记录,就必须等待当前进程的COMMIT或者回滚。 该语句用来锁定特定的行(如果有where子句,就是满足where条件的那些行)。当这些行被锁定后,其他会话可以 阅读全文
posted @ 2019-12-13 09:52 甜菜波波 阅读(10241) 评论(0) 推荐(1) 编辑
摘要:在冲突的字段加上转移符,这样子就可以了: insert into test_table (wind_code,name,`read`,creade_time) values (?,?,?,?) (注意:这个转移符不是中文(‘)或者英文(')的单引号,而是这个(`),长得很像对不对?如果用单引号,还是 阅读全文
posted @ 2019-09-30 15:10 甜菜波波 阅读(424) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示