Redis String数据类型常用命令

本文介绍了如何在VMware虚拟机中通过Xshell连接Redis,展示如何检查进程、设置和获取String类型数据,以及自启动、状态检查等步骤。涵盖了基本的键值操作和高级特性如生存时间、替换、批量操作等。
摘要由CSDN通过智能技术生成

启动VMware虚拟机,并在Xshell 7连接上虚拟机后

查看Redis进程是否自启动:ps -ef | grep redis

自启动成功结果图片

 

查看redis运行状态:service redis status

进入指定目录下:cd /home/redis-6.2.6/bin

运行redis文件进入redis: ./redis-cli

一、String类型

​
#设置String类型数据(添加)
127.0.0.1:6379> set name xiaolin
OK

#查看String类型值(获取)
127.0.0.1:6379> get name
"xiaolin"

#若key存在就不设置,不存在就设置(添加),当key存在的时候,返回0,表未设置成功
127.0.0.1:6379> setnx name xiaodong
(integer) 0


#为键和值设置生存时间,模板:setex key time value,其中time为生存时间,以秒为单位
127.0.0.1:6379> setex address 5 LP
OK

127.0.0.1:6379> get address
(nil)

#替换从指定索引处起的字符,从键值的value的索引0开始,替换(4+1、包括4+1)索引地址后的字符
127.0.0.1:6379> setrange name 4 dragon
(integer) 10
127.0.0.1:6379> get name
"xiaodragon"

#返回指定索引处的字符
127.0.0.1:6379> getrange name 4 9
"dragon"

#一次性设置多个键值对和一次性获取多个key值(m表多个)
127.0.0.1:6379> mset name xuebao age 2010 hostrole wenzhang
OK
127.0.0.1:6379> mget name age hostrole
1) "xuebao"
2) "2010"
3) "wenzhang"

#同时设置多个键值,存在就不设置,不存在就新增key值。要么都设置成功,要么都设置失败
127.0.0.1:6379> msetnx name xue sex male number 12
(integer) 0
127.0.0.1:6379> mget name age hostrole sex number
1) "xuebao"
2) "2010"
3) "wenzhang"
4) (nil)
5) (nil)

127.0.0.1:6379> msetnx name1 xue sex male number 12
(integer) 1
127.0.0.1:6379> mget name name1 age hostrole sex number
1) "xuebao"
2) "xue"
3) "2010"
4) "wenzhang"
5) "male"
6) "12"

#返回原始的值,设置新值
127.0.0.1:6379> get name
"xuebao"
127.0.0.1:6379> getset name xuhu
"xuebao"
127.0.0.1:6379> get name
"xuhu"

# value自增
127.0.0.1:6379> get number
"12"
127.0.0.1:6379> incr number
(integer) 13


# value增加指定的值(助记:number by 12     number被增加12)
127.0.0.1:6379> incr number
(integer) 13
127.0.0.1:6379> incrby number 12
(integer) 25

# value自减
127.0.0.1:6379> incrby number 12
(integer) 25
127.0.0.1:6379> decr number
(integer) 24

# value减少指定的值
127.0.0.1:6379> decr number
(integer) 24
127.0.0.1:6379> decrby number 14
(integer) 10

# value后面添加字符串
127.0.0.1:6379> append name xuebaotezhandui
(integer) 19
127.0.0.1:6379> get name
"xuhuxuebaotezhandui"

# 获取value字符串长度
127.0.0.1:6379> strlen name
(integer) 19







​

Redis集合(Set)是一种无序、不重复的数据结构,常用于存储一组唯一的元素。以下是Redis集合的一些常用命令及其Java操作示例: **Redis集合命令:** 1. **SADD (Add)**: 向集合中添加一个或多个成员,如果成员已存在则不会被添加。 ```java String setKey = "mySet"; Set<String> members = new HashSet<>(); // ["member1", "member2"] client.sadd(setKey, members.toArray(new String[0])); // 返回添加成功的元素个数 ``` 2. **SREM (Remove)**: 从集合中移除一个或多个成员。 ```java client.srem(setKey, "member1"); // 返回移除元素的数量 ``` 3. **SCARD (Cardinality)**: 获取集合的元素数量。 ```java long size = Long.parseLong(client.scard(setKey).toString()); // 返回集合大小 ``` 4. **SMEMBERS (Members)**: 获取集合的所有成员。 ```java List<String> membersList = Arrays.asList(client.smembers(setKey).toString().split("\n")); ``` 5. **SINTER (Intersection)**: 计算两个集合的交集。 ```java Set<String> intersection = client.sinter("set1", "set2"); ``` 6. **SUNION (Union)**: 计算两个集合的并集。 ```java Set<String> union = client.sunion("set1", "set2"); ``` 7. **SISMEMBER (Is Member)**: 检查一个成员是否存在于集合中。 ```java boolean memberExists = Boolean.parseBoolean(client.sismember(setKey, "member1").toString()); ``` 每种命令都有对应的`StringCommand`和`Transaction`版本,如`sadd`, `srem`等。 **Java操作Redis集合(Jedis/JedisCluster):** 在Java中,可以使用Jedis或JedisCluster库来操作Redis集合。例如,使用Jedis连接: ```java Jedis jedis = new Jedis("localhost", 6379); jedis.set("mySet", "{1,2,3}"); // 然后对上述命令进行对应的操作... ``` 请注意,上述代码示例假定你已经设置了Jedis客户端,并指定了Redis服务器的地址和端口。在实际项目中,你需要处理异常和关闭连接。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值