![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
冰怜
真正的静,是生命里寂然涤思;真正的动,是世路上毅然向前
展开
-
docker MySQL集群percona-xtradb-cluster
1.下载percona-xtradb-clusterdocker pull docker.io/percona/percona-xtradb-cluster给镜像改名docker tag percona/percona‐xtradb‐cluster pxc2.创建内部网络docker network create --subnet=172.18.0....原创 2020-01-14 14:57:53 · 732 阅读 · 2 评论 -
MongoDB基础、文档、用户
SQL与MongoDB对比,不同点 查询数据库show dbs查询全部数据db 显示当前数据库 2.创建数据库use Database_Name没有这个库,自动创建 集合1.创建集合db.createCollection("student")2.删除集合db.student.drop() 文档插入文档Mo...原创 2019-02-26 17:02:58 · 117 阅读 · 0 评论 -
数据库—索引优化、B-Tree、B+Tree、Hash、BitMap
如何设计一个关系型数据库?两大部分存储(文件系统(机械硬盘,固态硬盘))程序实例程序实例分为8个模块:1.存储管理模块:将数据的逻辑关系转换为物理存储关系2.缓存机制模块(内存来进行):优化执行效率3.SQL解析模块:解析SQL语句4.日志管理模块:记录操作(分库这些)5.权限划分模块:进行多用户管理(比如老板能看多所有员工信息,但是员工只能看到自己...原创 2019-03-25 11:26:00 · 600 阅读 · 0 评论 -
数据库—密集索引、稀疏索引、优化慢查询SQL、索引越多越好?
密集索引和稀疏索引的区别密集它是一一对应稀疏是一个对应多个值InnoDB采用主键 >第一个非唯一 >非空唯一 >生成隐藏作为密集索引(唯一)shop_info_large 表是InnoDB有两个文件 InnoDB索引和数据是存在一起的*.ibd一个frm 表结构ibd是数据内容shop_info_small ...原创 2019-03-25 18:19:48 · 891 阅读 · 0 评论 -
数据缓存-redis从海量数据里查询某一固定前缀的key
从海量数据里查询某一固定前缀的key如果用key 服务会出现卡顿 长时间查询scan 取出少量元素SCAN cursor [MATCH pattern][COUNT count]基于游标的迭代器,需要基于上一次的游标延续之前的迭代过程以0作为游标开始一次新的迭代,知道命令返回游标0完成一次遍历不保证每次执行都返回某个给定数量的元素,支持模糊查询一次返回的数量不可控,只能...原创 2019-03-29 18:52:17 · 6036 阅读 · 0 评论 -
数据缓存Redis-分布式锁、异步队列、持久化、Redis集群
如何通过Redis实现分布式锁分布式锁需要解决的问题互斥性安全性死锁容错SEINX 实现分布锁SEINX key value:如果key不存在,则创建并赋值时间复杂度:O(1)返回值:设置成功,返回1;设置失败,返回0。如果解决SEINX长期有效的问题expire key seconds设置key的生存时间,当key过期时(...原创 2019-03-29 22:27:06 · 739 阅读 · 0 评论 -
数据缓存-Redis
为什么Redis能这么快100000+QPS(QPS即query per second,每秒内查询次数)完全基于内存,绝大部分请求是纯粹的内存操作,执行效率高数据结构简单,对数据操作也简单采用单线程,单线程也能处理高并发请求,想多核也可启动多实例Redis的数据类型String:最基本的数据类型;Hash:String元素组成的字典,适合用于存储对象List:...原创 2019-03-27 20:58:31 · 480 阅读 · 0 评论