Redis入门到高可用(三)——通用命令
通用命令 参考 http://redisdoc.com/index.html
1. keys #查看所有key
- 时间复杂度:O(N),
N为数据库中key的数量。
127.0.0.1:6379> keys *
keys命令一般不在生产环境使用!
原因:生产环境键值对比较多;意义不大
想用keys命令怎么办?
①热备从节点(从节点一般不在生产环境使用,可以在从节点上执行此命令)
②使用scan命令代替keys命令
2. dbsize #计算key的总数
时间复杂度是O(1),内部有计数器,不是遍历操作的
3. exists #检查key是否存在
- 时间复杂度:O(1)
- 返回值:若
key存在,返回1,否则返回0。 -
redis> SET db "redis"
OK redis> EXISTS db
(integer) redis> DEL db
(integer) redis> EXISTS db
(integer)4. DEL key [key ...] #删除给定的一个或多个
key不存在的
key会被忽略。- 时间复杂度:O(N),
N为被删除的key的数量。 -
删除单个字符串类型的
key,时间复杂度为O(1)。删除单个列表、集合、有序集合或哈希表类型的key,时间复杂度为O(M),M为以上数据结构内的元素数量。 - 返回值:被删除
key的数量。 -
# 删除单个 key redis> SET name huangz
OK redis> DEL name
(integer) # 删除一个不存在的 key redis> EXISTS phone
(integer) redis> DEL phone # 失败,没有 key 被删除
(integer) # 同时删除多个 key redis> SET name "redis"
OK redis> SET type "key-value store"
OK redis> SET website "redis.com"
OK redis> DEL name type website
(integer)
- 时间复杂度:O(N),
5. TYPE key #返回 key 所储存的值的类型。
- 时间复杂度:O(1)
- 返回值:
-
none(key不存在)string(字符串)list(列表)set(集合)zset(有序集)hash(哈希表)# 字符串 redis> SET weather "sunny"
OK redis> TYPE weather
string # 列表 redis> LPUSH book_list "programming in scala"
(integer) redis> TYPE book_list
list # 集合 redis> SADD pat "dog"
(integer) redis> TYPE pat
set6. expire、ttl、persist
expire key seconds #key在seconds秒后过期
ttl key #查看key剩余的过期时间
persist key #去掉key的过期时间
Redis入门到高可用(三)——通用命令的更多相关文章
- Redis入门到高可用(一)——初识Redis
一.Redis是什么 * 开源 * 基于键值的存储服务系统 * 支持多种数据结构 * 高性能,功能丰富 二.Redis特性 ♦️ 概述 * 速度快 * 支持持久化 * 支持多种数据结构 * 支持多种编 ...
- Redis入门到高可用(十九)——Redis Sentinel
一.Redis Sentinel架构 二.redis sentinel安装与配置 四.客户端连接Sentinel 四.实现原理—— 故障转移演练(客户端高可用) 五.实 ...
- Redis入门到高可用(十八)—— 主从复制
一.单机有什么问题 1.机器故障 2.容量瓶颈 3.QPS瓶颈 二.主从复制 1.数据副本(高可用.分布式基础) 2.拓展读性能(读写分离) 简单总结: 三.主从复制配置 四.主从复制配置-实验演示 ...
- Redis入门到高可用(六)—— 字符串
一.结构和命令 1.字符串键值结构 key是字符串,value可以是字符串.数字.二进制.json等: redis的key和string类型value限制均为512MB. 2.使用场景 ♦️ 缓存 ♦ ...
- Redis入门到高可用(十一)—— 慢查询
一.慢查询日志 慢查询日志帮助开发和运维人员定位系统存在的慢操作.慢查询日志就是系统在命令执行前后计算每条命令的执行时间,当超过预设阀值,就将这条命令的相关信息(慢查询ID,发生时间戳,耗时,命令的详 ...
- Redis入门到高可用(二十)——Redis Cluster
一.呼唤集群 二.数据分布概论 三.哈希分布 1.节点取余 2.一致性哈希 添加一个node5节点时,只影响n1和n2之间的数据 3.虚拟槽分区 四.基本架构 五.redis clust ...
- Redis入门到高可用(十六)—— 持久化
一.持久化概念 二.持久化方式 三.redis持久化方式之——RDB 1.什么是RDB 在 Redis 运行时, RDB 程序将当前内存中的数据库快照保存到磁盘文件中, 在 Redis 重启动时, R ...
- Redis入门到高可用(十三)—— 发布订阅
一.模型 二.主要API 1.publish(发布命令) 2.subcribe(订阅) 3.取消订阅(unsubcribe) 4.其他API 三.消息队列功能 redis实现消息队列功能 应用场景:抢 ...
- Redis入门到高可用(十二)—— pipeline
一.回忆通信模型 二.流水线 1.什么是流水线 2.pipeline-Jedis实现 3.与原生M(mget,mset等)操作对比 M操作是原子操作 pipeline命令是非原子的,Redis服务器会 ...
随机推荐
- 【转】MYSQL-CLUSTER-7.5搭建数据库集群
阅读目录 前言 mysql cluster中的几个概念解释 架构图及说明 下载mysql cluster 安装mysql cluster之前 安装配置管理节点 安装配置数据和mysql节点 测试 启动 ...
- Xlight FTP搭建FTP服务器教程
Xlight FTP搭建FTP服务器教程 1. 服务器公共设置 设置FTP 端口, ip 等 FTP 服务器公共的设定 2. 设定 FTP 用户, FTP 目录 等信息 备注: 这个用户是非Wi ...
- c++ union内存
看一个例子: #include <iostream> #include <stdio.h> using namespace std; union A { int a; stru ...
- 在浏览器中高效使用JavaScript module(模块)
在浏览器中也可以使用JavaScript modules(模块功能)了.目前支持这一特性的浏览器包括: Safari 10.1. 谷歌浏览器(Canary 60) – 需要在chrome:flags里 ...
- docker 搭建ntp服务器
背景 在搭建etcd集群时,如果主机时间相差太多会出现同步错误,如果外部网络不可用时,需要使用内部的ntp服务器同步时间. 构建ntp镜像 创建Dockerfile # usage: # docker ...
- Go学习笔记(三)Go语言学习
这里我就不写具体的教程了,整理了一些很适合入门学习的网站 菜鸟Go入门 http://www.runoob.com/go/go-basic-syntax.html Go 语言的基本数据类型 https ...
- Django之ORM版学员管理系统
班级表 表结构 class Class(models.Model): id = models.AutoField(primary_key=True) # 主键 cname = models.CharF ...
- day_6.26 反射
#utf-8 #2018-6-26 17:58:36 #反射,, 应用:从类里面获取字符串 #在python中万物皆对象 class Teacher: dic = {"查看学生信息" ...
- Workbox 缓存
介绍 https://developers.google.cn/web/tools/workbox/guides/get-started 先注册一个service worker <script& ...
- Semver(语义化版本号)扫盲
最近Github 10周年在朋友圈里沸沸扬扬刷屏,小编在工作中却惊讶的发现不少同事对版本号中的beta和rc没有概念,使用 npm install package@next 时,也不清楚next代表的 ...