
数据库的日常操作
文章平均质量分 89
记录MySQL,Redis,MongoDB等数据库的操作。
小生凡一
Talk is cheap. Show me the code.
展开
-
图解 Redis AOF 持久化 | 创建与载入|重写
除了RDB持久化外,Redis还提供了AOF(Append Only File)持久化功能。这篇文章我们就来讲讲AOF持久化的细节原理。原创 2025-02-09 12:06:55 · 843 阅读 · 0 评论 -
图解Redis RDB持久化 | 创建与载入|文件结构
Redis RDB持久化原创 2024-12-17 09:45:00 · 743 阅读 · 0 评论 -
【Redis底层解析】链表类型
链表提供了高效的节点重排能力,以及顺序性的节点访问方式,并且可以通过增删节点来灵活调整链表的长度。链表在redis中也被广泛运用,比如在发布与订阅,慢查询,监视器等功能中也用到了链表。本身还使用链表来保存多个客户端的状态信息,以及使用链表来构建客户端输出缓冲区(outputbuffer)。...原创 2022-07-24 22:57:32 · 924 阅读 · 0 评论 -
【Redis底层解析】整数集合
每当我们要将一个新元素添加到整数集合里面,并且新元素的类型比整数集合现有所有元素的类型都要长时,整数集合需要先进行升级(upgrade),然后才能将新元素添加到整数集合里面。根据新元素的类型,扩展整数集合底层数组的空间大小,并为新元素分配空间。将底层数组现有的所有元素都转换成与新元素相同的类型,并将类型转换后的元素放置到正确的位置上,而且放置元素的过程中,需要继续维持底层数组的有序性不变。将新元素添加到底层数组里面。...原创 2022-08-14 11:22:22 · 1135 阅读 · 0 评论 -
【Redis底层解析】跳跃表
跳跃表 ( skip list ) 是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。Redis 使用跳跃表作为有序集合键的底层实现之一,如果一个有序集合包含的元素数量比较多,又或者有序集合中元素的成员是比较长的字符串时,Redis 就会使用跳跃表来作为有序集合键的底层实现。...原创 2022-08-07 16:54:02 · 934 阅读 · 0 评论 -
【Redis底层解析】字典类型
随着操作的不断执行,哈希表保存的键值对会逐渐地增多或是减少,为了让哈希表地负载因子维持在一个合理的范围内,当哈希表保持的键值对 数量太多或者太少。当要将一个新的键值对,添加到字典里面时,程序需要先根据键值对的键计算出哈希值和索引值,将包含新键值对的哈希表节点放到哈希表数组的指定索引上面。计算出键 k0 的索引值 0 ,这表示包含键值对 k0 和 v0 的节点应该被放置到哈希表数组的索引 0 位置上。Key 属性保存着键值对中的键,而v属性则保存着键值对中的值,其中键值对的值,可以是一个指针,或是一个。...原创 2022-08-06 11:58:46 · 978 阅读 · 0 评论 -
【Redis底层解析】字符串类型
每个结构表示一个SDS值intlen;//记录buf数组中已使用字节的数量//等于SDS所保存字符串的长度intfree;//记录buf数组中未使用字节的数量charbuf[];//字符数组,用于保存字符串}SDS示例free属性的值为0,表示这个SDS没有分配任何未使用空间len属性的值为7,表示这个SDS保存了一个七字节长的字符串SDS遵循C字符串以空字符结尾的惯例,保存空字符的1字节空间不计算再SDS的len属性里面,......原创 2022-07-24 21:38:22 · 990 阅读 · 0 评论 -
Redis的数据类型、事务以及持久化
目录1. 基本的数据类型1.1 字符串String1.2 列表 list1.3 集合 set1.4 有序集合 zset1.5 哈希 hash2. Redis 事务2.1 事务对比2.2 事务过程2.3 一个面试题1. 基本的数据类型1.1 字符串String命令操作名称setmsetgetmgetsetrangeappendgetrangegetsetincrincrbyincrbyfloatd原创 2022-03-22 08:48:59 · 1177 阅读 · 0 评论 -
【MySQL】 主从复制及其配置
关于MySQL的主从复制原创 2021-11-10 21:51:44 · 2449 阅读 · 0 评论