Redis入门基础常用操作命令整理


Posted in Redis onJune 01, 2022

Redis基础

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sorted sets)与范围查询,bitmaps,hyperloglogs 和地理空间(geospatial) 索引半径查询。

Redis 内置了复制(replication),LUA脚本(Lua scripting),LRU驱动事件(LRU eviction),事务(transactions)和不同级别的磁盘持久化(persistence),并通过Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

一、redis是单线程

redis是基于内存操作的,cpu并不是redis的性能瓶颈,它的瓶颈取决于机器的内存和网络带宽,所以能用单线程实现那就用单线程好了。

那么为什么用单线程还能这么快?

首先有2个误区先要明确:

  • 高性能的服务器不一定是多线程的。
  • 多线程也不是一定比单线程效率高。

redis是将所有的数据放到内存里去,多线程的话反而会存在cpu切换上下文从而增加耗时,而对内存系统来说,没有上下文的切换,单线程操作效率就是最高的。

二、关于数据库的常用操作

1. 默认数据库

redis默认有16个数据库,默认使用是第一个数据库(下标为0)。可以查看下配置文件,里面有database 16

Redis入门基础常用操作命令整理

2. 切换数据库

select 3,可以切换到第4个数据库。

Redis入门基础常用操作命令整理

3. 查看数据库大小

dbsize可以查看当前数据库大小。

Redis入门基础常用操作命令整理

这时,给数据库里set一个值,再次查看数据库大小,就变化了。

Redis入门基础常用操作命令整理

4. 清空数据库

清空当前的数据库

flushdb

清空所有的数据库

flushall

三、关于Redis-Key的常用操作

1. set 设置key 和 value

set name pingguo222

2. keys * 查看所有的key

可以查看所有的key。这里切换回默认的数据库,查看所有key。

keys *

Redis入门基础常用操作命令整理

3. get key 的 value

get name

Redis入门基础常用操作命令整理

4. exists key 是否存在key

exists name

存在,则返回1,不存在则返回0。

Redis入门基础常用操作命令整理

5. move 移动 key

MOVE 命令是将当前数据库的 key 移动到给定的数据库 db 当中。

move name 0

比如当前所在3数据库,命令是 把当前3数据库下的name移动到 0数据库下。如果成功了返回1,失败了返回0。

Redis入门基础常用操作命令整理

6. 设置key过期时间

我设置age 10s后过期,等10s后再次get就拿不到值了。

expire age 10

Redis入门基础常用操作命令整理

7. 查看key的剩余时间

我设置name过期时间100s,使用ttl查看。

ttl name

Redis入门基础常用操作命令整理

8. 查看key的类型

type name

Redis入门基础常用操作命令整理

命令实际上有很多,redis官网提供了查询命令的地方,后面啥不会就查啥。

Redis入门基础常用操作命令整理

以上就是Redis入门基础常用操作命令整理的详细内容,更多关于Redis基础操作命令的资料请关注三水点靠木其它相关文章!


Tags in this post...

Redis 相关文章推荐
redis连接被拒绝的解决方案
Apr 12 Redis
浅谈Redis存储数据类型及存取值方法
May 08 Redis
你真的了解redis为什么要提供pipeline功能
Jun 22 Redis
在redisCluster中模糊获取key方式
Jul 09 Redis
嵌入式Redis服务器在Spring Boot测试中的使用教程
Jul 21 Redis
缓存替换策略及应用(以Redis、InnoDB为例)
Jul 25 Redis
Redis Stream类型的使用详解
Nov 11 Redis
高并发下Redis如何保持数据一致性(避免读后写)
Mar 18 Redis
Redis 操作多个数据库的配置的方法实现
Mar 23 Redis
redis sentinel监控高可用集群实现的配置步骤
Apr 01 Redis
Redis主从复制操作和配置详情
Sep 23 Redis
Redis基本数据类型String常用操作命令
Jun 01 #Redis
Redis基本数据类型List常用操作命令
Jun 01 #Redis
Redis基本数据类型Set常用操作命令
Jun 01 #Redis
Redis基本数据类型哈希Hash常用操作命令
Jun 01 #Redis
Redis基本数据类型Zset有序集合常用操作
Jun 01 #Redis
Redis特殊数据类型Geospatial地理空间
Jun 01 #Redis
Redis特殊数据类型HyperLogLog基数统计算法讲解
Jun 01 #Redis
You might like
JS与PHP向函数传递可变参数的区别实例代码
2011/05/18 PHP
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
2014/06/26 PHP
nginx+thinkphp下解决不支持pathinfo模式
2015/07/01 PHP
PHP如何实现Unicode和Utf-8编码相互转换
2015/07/29 PHP
PHP实现简单计算器小程序
2020/08/28 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
2019/06/05 PHP
JS中剪贴板兼容性、判断复制成功或失败
2021/03/09 Javascript
为你的网站增加亮点的9款jQuery插件推荐
2011/05/03 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
JavaScript中使用Object.create()创建对象介绍
2014/12/30 Javascript
详解JS正则replace的使用方法
2016/03/06 Javascript
IScroll5 中文API参数说明和调用方法
2016/05/21 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
微信公众号支付H5调用支付解析
2016/11/04 Javascript
JavaScript中双符号的运算详解
2017/03/12 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
2017/08/23 Javascript
vue如何使用 Slot 分发内容实例详解
2017/09/05 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
Vue结合后台导入导出Excel问题详解
2019/02/19 Javascript
解析Python中的eval()、exec()及其相关函数
2017/12/20 Python
Tensorflow卷积神经网络实例
2018/05/24 Python
Python实现图片拼接的代码
2018/07/02 Python
Python 存储字符串时节省空间的方法
2019/04/23 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
Spark处理数据排序问题如何避免OOM
2020/05/21 Python
教师应聘自荐信范文
2014/03/14 职场文书
爱岗敬业演讲稿
2014/05/05 职场文书
火灾现场处置方案
2014/05/28 职场文书
2014年医院党建工作总结
2014/12/20 职场文书
看上去很美观后感
2015/06/10 职场文书
社区志愿服务活动感想
2015/08/07 职场文书
老人院义工活动感想
2015/08/07 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
拥有这5个特征人,“命”都不会太差
2019/08/16 职场文书
Vue3如何理解ref toRef和toRefs的区别
2022/02/18 Vue.js