1) Redis简介
Redis 是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、
Key-Value数据库。
2) Redis之数据类型
Redis支持数据类型包括string、list、set、sorted set和hash。
2.1 key 相关命令
exists key 测试指定的key是否存在,存在返回1,不存在返回0
del key1 key2...keyN 删除指定的key, 返回删除key的数目,0表示指定key都不存在
type key 返回给定key的value类型。返回none表示不存在key,string字符类型,list链表类型,set无序集合类型...
keys pattern 返回匹配指定模式的所有key
randomkey 返回从当前数据库中随机选择的一个key,如果当前数据库是空的,返回空串
rename oldkey newkey 原子的重命名一个key,如果newkey存在,将会被覆盖,返回1表示成功,0表示失败。可能是oldkey存在或者和newkey相同
renamenx olekey newkey 同上,但是如果newkey存在返回失败
dbsize 返回当前数据库key的数量
expire key seconds 为key指定过期时间,单位是秒。返回1成功,0表示key已过期或不存在
ttl key 返回设置过期时间的key的剩余过期秒数 -1表示key不存在或者没有设置过期时间
select db-index 通过索引选择数据库,默认连接的数据库所有是0,默认数据库个数是16个。返回1表示成功,0失败
move key db-index 将key从当前数据库移动到指定数据库。返回1表示成功,0如果key不存在,或者已经在指定数据库中
flushdb 删除当前数据库中所有key,此方法不会失败。
flushall 删除所有数据库中的所有key,此方法不会失败,更慎用。
2.2 string类型
string 是redis最基本的类型,而且string类型是二进制安全的。意思是redis的string可以包含任何数。比如jpg图片或者序列化的对象。
redis操作string类型:
set key value 设置key对应的值为string类型的value,返回1表示成功,0失败
setnx key value 同上,如果key已经存在,返回0。nx是not exists的意思
get key 获取key对应的string值,并返回key的旧值。如果key不存在返回nil
getset key value 原子的设置key的值,并返回key的旧值。如果key不存在返回nil
mget key1 key2 ... keyN 一次获取多个key的值,如果对应key不存在,则对应返回nil
mset key1 value1 ... keyN valueN 一次设置多个key的值,成功返回1表示所有的值都设置了,失败返回0表示没有任何值被设置
msetnx key1 value1 ... keyN valueN 同上,但是不会覆盖已经存在的key
incr key 对key的值做加加操作,并返回新的值。注意incr一个不是int的value会返回错误,incr一个不存在的key,则设置key为1
decr key 同上,但是做的是减减操作,decr一个不存在key,则设置key为-1
incrby key inte 同incr 加指定值,key不存在时候会设置key,并认为原来的value是0
append key value 给指定key的字符串值追加value返回新字符串值的长度
substr key start end 返回截取过的key的字符串值,注意并不修改key的值,下标是从0开始的
2.3 list类型
redis的list的类型其实就是每个子元素都是string类型的双向链表。所以[lr]push和[lr]pop命令的算法时间复杂度都是0.
list相关命令:
lpush key stri在key对应的list的头部添加字符串元素,返回1表示成功,0表示key存在且不是list.
rpush key str同上,在尾部添加
llen key 返回key对应list的长度,key不存在返回0,如果key对应的类型不是list返回错误
lrange key start end 返回指定区间内的元素,下标从0开始,负值表示从后面计算,-1表示倒数第一个元素。key不存在返回空列表
ltrim key start end 截取list保留指定区间内的元素,成功返回1,key不存在返回错误
lset key index value 设置list中指定下标的元素值,成功返回1,key或者下标不存在返回错误
lrem key count value 从key对应的list中删除count个和value相同的元素,count为0时候删除全部
lpop key 从list的头部删除元素,并返回删除元素。如果key对应的list不存在或者是空返回nil,如果key对应值不是list返回错误
rpop key 同上,但是从尾部删除
相关推荐
Redis 入门指导操作,包含安装,配置,数据类型... ..脚本,持久化
Redis开发入门指导,介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、管道、持久化、优化Redis存储空间等内容,并采用任务...
本书是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、管道、持久化、优化Redis...
Redis数据库从入门到实践 Redis是一种快速、高性能的键值对数据库,常用于缓存和会话管理等功能。...本书适用于初学者快速上手Redis,也对有一定基础的开发者提供进阶指导。本书是一本非常实用的Redis参考资料。
本文档是《HAP框架-Redis入门手册》的1.0版本,由DongHongAn和WuSheng于2016年7月12日创建,并在2016年7月24日进行了最后更新。主要目标是为HAP框架的使用者提供关于Redis数据库的基础知识、常用命令、客户端工具...
同时,我们将指导您如何在不同的操作系统上安装Redis,并进行基本的启动和停止操作。 第二章:数据类型与操作 Redis支持多种数据类型,如字符串、哈希、列表、集合和有序集合。本章将详细介绍这些数据类型的使用...
Redis,全称Remote Dictionary Server,是一款高...总之,《Redis入门手册》会详细介绍这些内容,并提供实例和实践指导,帮助读者快速上手Redis,理解其工作原理和应用场景,为后续的深入学习和实际开发打下坚实基础。
### Redis入门教程知识点详解 #### 一、Redis简介 **定义**: - **Redis**(Remote Dictionary Server)是一个开源的高性能键值(Key-Value)存储系统,采用ANSI C编写,支持网络通信,能够在内存中运行并具备数据...
### Redis 入门手册知识点详解 #### 一、Redis简介 Redis是一个开源的高性能键值(Key-Value)存储系统,采用ANSI C语言编写而成,支持网络通信,并且能够实现基于内存的数据存储以及数据的持久化。其核心优势在于...
**Redis的入门指导** Redis是一款开源的、高级的键值存储系统,它支持更多数据结构,如字符串、哈希、列表、集合和有序集合,使得它在数据库、缓存和消息中间件等场景中都有广泛应用。 1. **安装与启动**: Redis的...
1. **Redis入门**: Redis入门文档通常会涵盖Redis的基本操作,包括安装、启动、数据类型(如字符串、哈希、列表、集合和有序集合)的使用,以及命令行交互。通过这份文档,初学者可以快速掌握Redis的基本操作,并...
### Redis实战指导知识点详解 #### 一、Key-Value存储系统简介 在开始Redis的学习之前,我们先来了解一下Key-Value存储系统的一些基础知识。 ##### 1.1.1 Voldemort Voldemort是一个分布式键值存储系统,它最初由...
本资料包“左手MongoDB,右手Redis.zip”包含了关于这两种数据库的深入理解和实践指导,主要通过PDF文档的形式呈现。 MongoDB是一种文档型数据库,以JSON格式的文档作为数据存储单元,具有强大的灵活性和可扩展性。...
Redis是一个开源的高性能键值存储系统,它主要用于数据缓存、消息队列和实时统计分析等领域。Redis支持多种数据结构,包括...如果你对Redis感兴趣,并且想要入门Redis开发,那么这篇文章将会为你提供一些指导和建议。
文中还提供了Redis的快速入门指导,包括安装、配置以及操作数据库的基本命令。 在数据类型及操作章节中,详细介绍了Redis支持的六种数据类型及其操作方法: 1. Strings类型及操作:提供了set、setnx、setex、...
《Redis Essentials》是一本快速入门指南,涵盖了Redis的基本操作和关键特性,使读者能在短时间内掌握Redis的关键用法。这本书可能适合那些需要快速学习并应用Redis的开发者。 现在,让我们进一步探讨这些主题: 1...
综上所述,Redis实战中文版是一本内容全面的Redis学习指南,无论你是Redis新手还是有一定基础的开发者,本书都能为你提供深入的理论知识和实践操作指导,帮助你在处理分布式系统和大数据存储时更加得心应手。