笔记

Redis提供了六种基本的数据结构:String,Hash,List,Set,Sorted Set,HyperLogLog。
Redis的特点:纯内存操作,单线程工作模型,非阻塞I/O多路复用。
Redis数据删除策略:定期删除(每100ms随机抽查key),惰性删除(key被命中时检查)
Redis内存淘汰策略:推荐 redis.conf 配置中# maxmemory-policy allkeys-lru ,即内存无空间写入时,删除最近最少使用的key

常用操作

docker run --restart=always -d -p 6379:6379 --name rain-redis redis --requirepass "123456"

终端连接

redis-cli -a 123456

查看配置

# 查看密码
config get requirepass # 查看最大内存限制
config get maxmemory # 查看最大连接数
config get maxclients # 查看内存淘汰策略
config get maxmemory-policy

常用指令

  1.key 相关

# 查询key类型
type <key> # 检验key是否存在
exists <key> # 按模式输出存在的key
keys <pattern>
# 输出所有存在的key
keys * # 删除key
del <key1> <key2> ... # 设置过期时间
expire <key> <seconds> # 取消过期时间
persist <key>

  2.String 类型

# 新增
set <key> <value> # 获取
get <key> # 批量新增
mset <key1> <value1> <key2> <value2> ... # 批量获取
mget <key1> <key2> ... # 追加字符串
append <key> <append_value> # 获取字符串长度
strlen <key>

  3.Hash 类型

# 新增
hset <key> <field> <value> # 获取
hget <key> <field> # 批量新增
hmset <key> <field1> <value1> <field2> <value2> ... # 批量获取
hmget <key> <field1> <field2> ... # 统计field个数
hlen <key> # 列出所有的field
hkeys <key> # 列出所有的value
hvals <key> # 列出所有的key和value
hgetall <key>

  4.List 类型

# 左新增
lpush <key> <value> # 右新增
rpush <key> <value> # 左删除并返回
lpop <key> # 右删除并返回
rpop <key> # 返回list长度
llen <key> # 按index设置value
lset <key> <index> <value> # 按index返回value
lindex <key> <index> # 按index范围返回list
lrange <key> <start> <stop>
# 返回全部的list
lrange <key> 0 -1 # 删除count个等于value的值,count>0 正向搜索,count<0 逆向搜索,count=0 全部删除
lrem <key> <count> <value>

  5.Set 类型

# 新增
sadd <key> <member1> <member2> ... # 统计成员数
scard <key> # 删除成员
srem <key> <member1> <member2> ... # 显示成员
smember <key>

  6.Sorted Set 类型

# 新增
zadd <key> <score1> <member1> <score2> <member2> ... # 统计成员个数
zcard <key> # 删除成员
zrem <key> <member1> <member2> ... # 按index显示成员
zrange <key> <start> <stop>
# 显示全部成员
zrange <key> 0 -1 # 按分数范围显示成员
zrangebyscore <key> <min> <max>

  7.HyperLogLog 类型,常用来做基数统计

# 新增
pfadd <key> <element1> <element2> ... # 统计基数
pfcount <key1> <key2> ... # 合并HyperLogLog
pfmerge <destkey> <sourcekey1> <sourcekey2>

一图浏览Redis基础操作和命令

 

Redis 命令参考

http://doc.redisfans.com/

作者:一杉风雨
链接:https://www.jianshu.com/p/917f6b826d3a
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

【转】Redis 基础操作和命令的更多相关文章

  1. Redis 基础操作

    [Redis 基础操作] 1.ECHO message. Returns message. 2.PHING Returns PONG if no argument is provided, other ...

  2. redis基础操作~~数据备份与恢复、数据安全、性能测试、客户端连接、分区

    数据备份与恢复 数据备份redis save 命令用于创建当前数据库的备份. redis 127.0.0.1:6379> SAVE OK 该命令将在 redis 安装目录中创建dump.rdb文 ...

  3. Redis基础知识、命令以及java操作Redis

    1 nosql的概念 sql:操作(关系型)数据库的标准查询语言 关系型数据库(rdbms):以关系(由行和列组成的二维表)模型为核心数据库,有表的储存系统.(mysql.oracle.sqlserv ...

  4. Redis学习笔记(3) Redis基础类型及命令之二

    1. 集合类型 集合类型与列表类型有很多相似之处,但二者的区别在于:前者具有唯一性,但不具有有序性:后者具有有序性,但不具有唯一性.集合类型的常用操作是向集合中加入或删除元素.判断某个元素是否存在等, ...

  5. Redis学习笔记(2) Redis基础类型及命令之一

    1. 基础命令 (1) 获取符合规则的键名列表 格式为:KEYS pattern 其中pattern表示支持通配符 # 建立一个名为bar的键 > SET bar OK # 获取Redis所有键 ...

  6. redis基础操作概念等笔记

    Redis常用配置 daemonize ->是否是后台进程 port ->对外端口 logfile ->Redis 系统日志 dir ->Redis 工作目录 Redis的链接 ...

  7. redis 基础操作教程

    1.linux 安装redis : Linux 下安装 下载地址:http://redis.io/download,下载最新稳定版本. 本教程使用的最新文档版本为 2.8.17,下载并安装: $ wg ...

  8. 三、Redis基础操作

    前言: Redi是key-value的NoSQL,我们用Redis提供的redis-cli就能操作String类型key和各种数据类型value.但是放入的不是特定类型数据,添加的都是一个一个Stri ...

  9. Redis 基础概念和命令

    Redis 是什么 Redis是一种基于键值对(key-value)的NoSQL数据库. 为什么使用Redis 速度快 Redis的时间颗粒度一般是微秒,慢查询的默认值是10 000微秒,即10毫秒. ...

随机推荐

  1. 百度编辑器(ueditor)踩坑,图片转存无法使用

    在使用 百度编辑器 的过程中碰到了一些问题,图片转存功能无法使用, 即便是疯狂地在官方 Demo.文档.论坛甚至是 GitHub 上也没找到理想的答案.(┗|`O′|┛) (真是日了狗) 问题描述 默 ...

  2. SpringCloud Feign 常用代码

    服务提供者 服务提供者,是位于其他项目里面的. 服务提供者提供的方法,在Controller层里面,有可访问的Url. @Controller @RequestMapping("/order ...

  3. 运行OpenGL红宝书第9版源码时Visual Studio提示“无法启动程序...ALL_BUILD。拒绝访问“的问题的解决办法

    问题描述: OpenGL红宝书第9版源码采用CMake编译后,用相应的Visual Studio(如VS2012)打开“vermilion9.sln”解决方案,并运行时Visual Studio提示“ ...

  4. RPC接口测试(二) RPC 与HTTP的区别

    RPC 与HTTP的相同点 两种风格的API区别,总结一下其实非常简单: 1,RPC面向过程,只发送 GET 和 POST 请求.GET用来查询信息,其他情况下一律用POST.请求参数是动词,直接描述 ...

  5. 自定义设置jqGrid的标头居中加粗等

    beforeRequest: function () { $("thead th").css("text-align", "center") ...

  6. Xamarin图表开发基础教程(10)OxyPlot框架支持的图表类型

    Xamarin图表开发基础教程(10)OxyPlot框架支持的图表类型 OxyPlot组件支持26种图表,这些图表按照功能和样式可以分为4大类,分别为线型图表.条型图表.金融图表和其它图表. 线型图表 ...

  7. C# winform判断窗体是否已打开

    Form1 form; /// <summary> /// 开始检测 /// </summary> /// <param name="sender"& ...

  8. Java12新特性 -- 只保留一个 AArch64 实现

    现状 当前 Java 11 及之前版本JDK中存在两个64位ARM端口.这些文件的主要来源位于src/hotspot/cpu/arm 和 open/src/hotspot/cpu/aarch64 目录 ...

  9. Freemarke

    本文介绍了freemarker的集成.FTL指令.内建函数.运算符等常用操作. 1.为什么要使用网页静态化技术 网页静态化解决方案在实际开发中运用比较多,例如新闻网站,门户网站中的新闻频道或者是文章类 ...

  10. springMVC和struts2有什么不同?为什么要用springMVC或者struts2?让你实现一个MVC框架大概如何设计?

    [问题一:不同] (1)框架机制 1.Struts2采用Filter(StrutsPrepareAndExecuteFilter)实现,SpringMVC(DispatcherServlet)则采用S ...