Redis数据库 常用的基本操作
一、redis数据库操作
redis数据库默认有16个数据库【0-15】,默认进入的是0库。
select 数据库名 :切换数据库。
keys * :查看所有的键。
expire 键 秒数:设置过期时间。
persist 键:移除过期时间。
del 键:指定键进行删除。返回值代表删除的个数。
flushdb:清空当前数据库中的所有内容。
flushall:清空所有数据库的所有内容。
1.字符串的操作
(1)set key value:设置一个键值对,返回ok代表设置成功。如果对同一个key设置不同值,相当于修改。
(2)get key:获取对应键的值。
(3)setnx key value:设置一个键值对,如果键存在,不会覆盖,不存在则设置。
(4)setex key 秒数 value:设置一个指定有效期的键值对。
(5)setrange key 偏移量(索引) value :替换,从偏移量的位置开始替换,返回值是替换后的字符串的长度。
(6)mset key1 value1 key2 value2……:批量设置键值对
(7)mget key1 key2……:批量获取。
(8)msetnx key1 value1 key2 value2……:批量设置键值对,如果键存在不会覆盖,不存在则创建。
(9)getset key new_value:获取key的原值,设置新值,返回值是原值。
(10)getrange key start end:获取指定范围(索引范围:[start,end])的内容
(11)incr key:给对应键的值++,就是+1
(12)incrby key value :给对应键的值,加上指定的数
(13)decr key :给对应键的值--,就是-1
(14)decrby key value:给对应键减去对应的值
(15)append key value:给指定的键追加指定的值,返回值是增加后的总长度。
(16)strlen key:查看字符串的长度。
2.redis数据库中的列表指令
redis数据库中的列表是双向链表结构,基于这种结构,redis数据库的列表可以实现栈和队列。
(1)lpush key value:在列表头部插入元素,返回值代表添加后的列表的长度。
(2)lrange key start stop:查看列表中指定范围的元素。
(3)rpush key value:在列表尾部插入元素
(4)lpop key:从头部弹出一个元素,返回值是删除的元素
(5)rpop key:从尾部弹出一个元素,返回值是删除的元素
(6)linsert key BEFORE|AFTER 值 新值:在原有元素之前或之后插入一个元素,返回值是插入之后的列表的长度。
(7)lset key 索引 新值:修改指定索引位置上的元素。
(8)lrem key count 值:从key中删除指定数量的元素。
count>0 代表头部删除
count<0 代表尾部删除
count=0 代表全部删除
(9)ltrim 键 start end:保留[start,end]范围内的元素,或者删除[start,end]范围外的元素。
(10)lindex 键 索引 :查看指定索引上的元素
(11)llen 键:查看列表的长度
(12)rpoplpush key1 key2 :从key1的尾部删除元素,将删除的元素添加到key2的头部,返回值是删除的元素。
3.redis数据库中的无序集合
集合是没有重复元素的
(1)sadd key member1 member2……:向集合中插入多个元素,返回值是插入成功的元素数量。
(2)smembers key:查看集合中的元素数量。
(3)srem key value1 value2……:指定成员进行删除,返回值是删除成功的元素数量。
(4)spop key 【count】:从集合中随机弹出count个元素,默认弹出1个 ,返回值是弹出的元素。
(5)srandmember key [count]:随机获取count个元素,默认获取一个,返回值是获取的元素。
(6)smove key1 key2 value :将key1中的value移动到key2中。
(7)scard key:查看集合长度。
(8)sdiff key1 key2 :查看两个集合中的差集。
(9)sinter key1 key2:查看两个集合的交集。
(10)sunion key1 key2 :查看两个集合的并集。
sismember key value:判断value是否在集合中存在,返回值1代表存在,0代表不存在。
Redis数据库 常用的基本操作的更多相关文章
- 05_NoSQL数据库之Redis数据库:Redis的常用命令,键值相关命令和服务器相关命令
Redis常用命令 Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以再Linux终端使用. 键值相关命令: Keys:返回满足给定pattern的所有key 用表达式*表 ...
- 高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器
一.源码安装Redis缓存服务 目标: 本案例要求先快速搭建好一台Redis服务器,并测试该缓存服务器: 1> 设置变量test,值为123 2> 查看变量test的值 3> 设置计 ...
- 【数据库】Redis(2)--Redis的常用数据类型及命令
1.Redis主要数据类型分类 Redis中存储数据常用的数据类型主要有五种:String.List.Set.Sorted Set.Hash,这五种数据结构在Redis中存储数据的命令掌握对于我们后期 ...
- 【网络爬虫入门05】分布式文件存储数据库MongoDB的基本操作与爬虫应用
[网络爬虫入门05]分布式文件存储数据库MongoDB的基本操作与爬虫应用 广东职业技术学院 欧浩源 1.引言 网络爬虫往往需要将大量的数据存储到数据库中,常用的有MySQL.MongoDB和Red ...
- Python使用Redis数据库
Redis 简介 Redis是开源的高性能Key-Value数据库,可以用于缓存等用途. Redis可以提供事务和持久化支持保证并发安全性,并提供TTL(time to life)服务. 使用Redi ...
- 超强、超详细Redis数据库入门教程
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...
- Redis数据库的使用与介绍
本周11-15号开始用Redis数据库在现有的平台基础上开发一个独立模块,这是一个边学习.边记录.边交流.边开发.边总结的过程.大部分随笔都是个人的“工作日志”,旨在记录自己学习过程中收集的一些资料, ...
- 超强、超详细Redis数据库入门教程(转载)
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...
- redis数据库操作的C++简单封装
用c++简单封装了redis的基本操作(hiredis) 接口包括:①链接和断开连接.②设置键值对(set).③查询键值对(get).④删除键值对(del).⑤将所有键显示出来 若任何一处发生错误,返 ...
随机推荐
- Jenkins 基础篇-凭证配置
我们在正式开始使用 Jenkins 之前还要先配置一些凭证,这些凭证的作用主要是用于认证,例如我们要从代码仓库拉取代码,就需要用到代码仓库的账号密码或者密钥:我们要登录远程服务器也需要用户名密码或者密 ...
- 圆盘时钟效果 原生JS
圆盘时钟 旋转时钟 数字时钟 写在前面 仿荣耀手机时钟,设计的同款时钟效果 实现效果 实现原理 数字时钟 利用Date内置对象获取当下的时间,通过处理呈现在页面上 这一步获取时间是非常简单的,通过Da ...
- IDEA 最实用快捷键【MAC版本】
目录 option + F7 Ctrl + B / Ctrl +鼠标左键(一键两用,可以无限循环的跳过来跳过去,我跳过去了,我又跳回去了) command + E (这个快捷键很有用,为什么我老是用不 ...
- 在Maven普通项目上添加Web app的支持
项目右键____> Add Frameworks Support
- 处理SpringMVC中遇到的乱码问题
乱码在日常开发写代码中是非常常见的,以前乱码使用的是通过设置一个过滤器解决, 现在可以使用SpringMVC给提供的过滤器,在web.xml设置,这比我们自己写的过滤器强大的的多. 注意:每次修改了x ...
- Django(47)drf请求生命周期分析
前言 一般我们写完序列化以后,我们就会开始写视图了,drf中我们一般使用CBV的方式,也就是类视图的方式,最基础的我们会使用from rest_framework.views import API ...
- GO学习-(22) Go语言之依赖管理
Go语言之依赖管理 Go语言的依赖管理随着版本的更迭正逐渐完善起来. 依赖管理 为什么需要依赖管理 最早的时候,Go所依赖的所有的第三方库都放在GOPATH这个目录下面.这就导致了同一个库只能保存一个 ...
- scrapy使用response.body时编码问题
scrapy使用response.body时编码问题 摘要:scrapy使用response.body时编码问题.如果在使用responses.body获取数据时,需要将其编码转换成unicode,即 ...
- 用OpenCV4实现图像的超分别率
用OpenCV4实现图像的超分别率 本实验原文链接:· https://arxiv.org/pdf/1807.06779.pdf 原文摘要 单图像超分辨率(SISR)的主要挑战是如何恢复微小纹理等高频 ...
- MindSpore技术理解(上)
MindSpore技术理解(上) 引言 深度学习研究和应用在近几十年得到了爆炸式的发展,掀起了人工智能的第三次浪潮,并且在图像识别.语音识别与合成.无人驾驶.机器视觉等方面取得了巨大的成功.这也对算法 ...