摘要: #### 数据结构大致可以分为三类: 线性表:顺序表(数组)、链表、栈、 队列 都属于线性表这一类。 存储 一对一 关系的数据 树结构:二叉树、B树、B+树。 存储 一对多 关系的数据 图存储结构:存储 多对多 关系的数据 阅读全文
posted @ 2021-08-12 13:40 梦里花。 阅读(80) 评论(0) 推荐(0)
摘要: Cache是把最常用的工具放在手边, Buffer是你家的垃圾桶,你平时的垃圾先扔在垃圾桶里,等垃圾桶满了再扔垃圾。 Cache的存在原因是对资源调用的空间局部性,你现在在看一本数学书,那么极有可能你一会儿还要再去图书馆的数学书架上找同类型的书,所以你在图书馆找了一个离数学区很近的位置坐下,你微信和 阅读全文
posted @ 2021-07-27 11:03 梦里花。 阅读(42) 评论(0) 推荐(0)
摘要: 当腰删除或者更新数据时,首先要雪薰出这些记录,然后再对其进行相应的 操作。 每一个操作都会产生一个虚拟表,该虚拟表作为处理的输入,这些虚拟表对用户的透明的,只有最后一步生成的虚拟表才会返回给用户。 阅读全文
posted @ 2021-07-14 07:56 梦里花。 阅读(27) 评论(0) 推荐(0)
摘要: MongoDB、MySQL、Oracle、PostgreSQL 等事务型数据库都有 mvcc 的概念。 MVCC: 即多版本并发控制,主要是为了提高数据库的读写性能,让数据库在读写的时候不用去加锁。mvcc 主要是处理读请求,这个读指的是快照读,而不是当前读,快照读就是普通的 select 查询。而 阅读全文
posted @ 2021-07-13 12:27 梦里花。 阅读(195) 评论(0) 推荐(0)
摘要: 为了支持各个国家的不同语言,MySQL 从4.0 版本开始支持了很多种字符集,且每种字符集支持了 N 多种排序规则。我们可以在建表的时候指定字符集的排序规则,不指定时会有一个默认规则。 字符集和排序规则总是一起使用的,每个排序规则都是针对某个特性的字符集,和其他字符集没有关系。 只有基于 字符串 的 阅读全文
posted @ 2021-07-08 16:44 梦里花。 阅读(76) 评论(0) 推荐(0)
摘要: MongoDB 从4.0 版本开始 副本集支持多文档事务,4.2 版本开始分片集群也支持多文档事务。单个集合的单个文档事务 在 1.x 就支持。 以下是跟 mongo 事务相关的一些概念: 1. Write Concern 参数格式: { w: <value>, j: <boolean>, wtim 阅读全文
posted @ 2021-07-05 10:09 梦里花。 阅读(673) 评论(0) 推荐(0)
摘要: 数值类型 floot(M,N) double(M,N): 浮点型 M 表示显示位数,即宽度 N 表示小数部分的精确位数 但是,这两种浮点型都是非精确类型。对于数值类型的高精度需求,显然 floot,double 不能满足。 高精度通常用 decimal 类型 decimal(M, N): 高精度类型 阅读全文
posted @ 2021-07-02 07:56 梦里花。 阅读(69) 评论(0) 推荐(0)
摘要: 使用 select ... INTO OUTFILE 语句导出数据:--single-transaction 导出数据到 /root/mytable.sql SELECT * FROM mytable INTO OUTFILE '/root/mytable.sql'; 你可以通过命令选项来设置数据输 阅读全文
posted @ 2021-06-17 14:33 梦里花。 阅读(39) 评论(0) 推荐(0)
摘要: 看到有一些博客说 between and 有不含边界的情况,于是测试了一把,记录如下。先说结论:between and 不存在不含边界的情况 1. between and 是包含边界的 id between 3 and 5 等价于 id >=3 and ⇐5; mysql> select * fro 阅读全文
posted @ 2021-06-16 17:00 梦里花。 阅读(849) 评论(0) 推荐(0)
摘要: 一、全局锁 mysql> flush table with read lock; FTWRL 会对整个实例加只读锁。会阻塞所有线程读以外的所有操作。查看线程状态 State: Waiting for global read lock 通常 对全库做逻辑备份(mysqldump)时,会加全局锁。 (1 阅读全文
posted @ 2021-06-16 11:25 梦里花。 阅读(127) 评论(0) 推荐(0)