redis中有5种常见的数据类型,针对这5种数据类型有着相应的数据操作。  

1.String(键值对为String - String)
set k1 v1
get k1
getset k1 v1 - hehe
mset k2 v2 - 123 k3 v3 -456
mget k1 k2 k3
incr num //自增1
incrby num 2
decr num
decrby num 2
append k1 "haha"
strlen k1
2.Hash(操作对象数据)
hset user username "zhangsan"
hmset user usersex male userage 18
hget user username
hmget user usersex userage
hincrby user userage 2
hdel user userage
hexists user userage
hkeys user
hvals user
hlen user
3.list(linkedlist, 有序列表)
lpush list:1 1 2 3
rpush list:1 4 5 6
lrange list:1 0 2
lrange list:1 0 - 1
lpop list:1
rpop list:1
lrem list:1 1 1
lrem list:1 0 2
lrem list:1 - 1 3
lindex list:1 1
lset list:1 1 9
linsert list:1 before 4 001
linsert list:1 after 6 007
rpoplpush list:1 newlist
4.set(无序, 不可重复)
sadd set:1 a b c
srem set:1 a
smembers set:1
sismember set:1 a
sadd setA 1 2 3
sadd setB 2 3 4
sdiff setA setB
sdiff setB setA
sinter setA setB
sunion setA setB
scard setA
spop setA
5.zset(sortedset, 有序集合,可排序,但是元素唯一)
[注:Sortedset和set的不同之处,是会给set中的元素添加一个分数,然后通过这个分数进行排序。]
zadd scoreboard 60 zhangsan 70 lisi 80 wagnwu
zadd scoreboard 90 zhaoliu
zscore scoreboard lisi
zrem scoreboard lisi
zrange scoreboard 0 3
zrevrange scoreboard 0 3
zrange scoreboard 0 3 withscores
zrank scoreboard zhaoliu
zrevrank scoreboard zhaoliu
zrangebyscore scoreboard 70 90 withscores
zincrby scoreboard 5 lisi
zrange scoreboard 0 - 1
zcard scoreboard
zcount scoreboard 80 90
zremrangebyrank scoreboard 0 1
zramrangebyscore scoreboard 70 90
其他常用命令:
keys *
exists k1
del k1
rename k1 k2
type k1
expire k1 1
ttl k1

  另外,在数据持久化存储方面,Redis默认通过快照的方式将数据持久化到磁盘中。可以在redis.conf中修改持久化快照 的条件(如 save 900 1);还可以在redis.conf中指定持久化文件存储的目录(如 dbfilename dump.redb)。一旦redis非法关闭,那么会丢失最后一次持久化之后的数据。如果数据不重要,则不必要关 心;如果数据不能允许丢失,那么要使用aof方式。

  Redis默认是不使用Aof方式持久化的。Aof方式的持久化,是操作一次redis数据库,则将操作的记 录存储到aof持久化文件中。使用aof方式持久化数据的步骤是:开启aof方式的持久化方案,将redis.conf中的appendonly改为yes,即开启aof方式的持久化方案; Aof文件存储的目录和rdb方式的相似,Aof文件存储的名称是 appendfilename "appendonly.aof"。
  在同时使用aof和rdb方式时,如果redis服务器重启,则数据从aof文件加载。
  持久化保证了即使redis服务重启也不会丢失数据,因为redis服务重启后会将硬盘上持久化的数据
恢复到内存中,但是当redis服务器的硬盘损坏了可能会导致数据丢失,如果通过redis的主从复制机制就可
以避免这种单点故障。关于这方面的资料,请参考《Redis集群配置》

redis常见数据操作的更多相关文章

  1. redis之数据操作详解

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  2. 用Jedis调用Lua脚本来完成redis的数据操作

    1.先完成一个简单的set/get操作 package com.example.HnadleTaskQueue; import redis.clients.jedis.Jedis; import ja ...

  3. StackExchange.Redis帮助类解决方案RedisRepository封装(字符串类型数据操作)

    本文版权归博客园和作者本人共同所有,转载和爬虫请注明原文链接 http://www.cnblogs.com/tdws/tag/NoSql/ 目录 一.基础配置封装 二.String字符串类型数据操作封 ...

  4. Jedis连接池对Redis数据操作

    [效果图] [前言] Redis是常用于缓存的非关系型数据库,感觉更像加强型的HashMap的用法,依靠Key和Value保存数据.官方推荐用Jedis来操作Redis数据库,使用和JDBC差不多,一 ...

  5. redis数据操作

    数据结构 redis是key-value的数据结构,每条数据都是一条字符串.注意:键的类型是字符串,并且不能重复. 值的类型分5种: 字符串string 哈希hash 列表list 集合set 有序集 ...

  6. Redis 安装,配置以及数据操作

    Nosql介绍 Nosql:一类新出现的数据库(not only sql)的特点 不支持SQL语法 存储结构跟传统关系型数据库中那种关系表完全不同,nosql中存储的数据都是k-v形式 Nosql的世 ...

  7. Redis—数据操作

    redis是key-value的数据,所以每个数据都是一个键值对. 数据操作的全部命令,可以查看中文网站. 键的类型是字符串 值的类型分为五种: 字符串string 哈希hash 列表list 集合s ...

  8. Redis简单的数据操作(增删改查)

    #Redis简单的数据操作(增删改查): 字符串类型 string 1. 存储: set key value 127.0.0.1:6379> set username zhangsan OK 2 ...

  9. SpringBoot 结合 Spring Cache 操作 Redis 实现数据缓存

    系统环境: Redis 版本:5.0.7 SpringBoot 版本:2.2.2.RELEASE 参考地址: Redus 官方网址:https://redis.io/ 博文示例项目 Github 地址 ...

随机推荐

  1. poj2299——Ultra-QuickSort

    Description In this problem, you have to analyze a particular sorting algorithm. The algorithm proce ...

  2. [您有新的未分配科技点]数位dp:从懵X到板子(例题:HDU2089 不要62)

    数位dp主要用来处理一系列需要数数的问题,一般套路为“求[l,r]区间内满足要求的数/数位的个数” 要求五花八门……比如“不出现某个数字序列”,“某种数的出现次数”等等…… 面对这种数数题,暴力的想法 ...

  3. 【BZOJ4405】【WC2016】挑战NPC(带花树)

    [BZOJ4405][WC2016]挑战NPC(带花树) 题面 BZOJ 洛谷 Uoj Description 小N最近在研究NP完全问题,小O看小N研究得热火朝天,便给他出了一道这样的题目: 有n个 ...

  4. 【BZOJ2653】Middle(主席树)

    [BZOJ2653]Middle(主席树) 题面 BZOJ 洛谷 Description 一个长度为n的序列a,设其排过序之后为b,其中位数定义为b[n/2],其中a,b从0开始标号,除法取下整.给你 ...

  5. 【读书笔记】《HTTP权威指南》:Web Hosting

    一.概述 从零开始构建一个真正意义的网站需要做很多事情,包括购买计算机硬件.建造机房.注册域名.购买网络带宽.开发Web服务器软件.管理网站内容等等.在互联网发展的早期,构建网站的这一系列动作通常都是 ...

  6. 电子商务(电销)平台中商品模块(Product)数据库设计明细

    以下是自己在电子商务系统设计中的数据库设计经验总结,而今发表出来一起分享,如有不当,欢迎跟帖讨论~ 商品表 (product)|-- 自动编号 (product_id)|-- 商品名称 (produc ...

  7. 64位win10系统无法安装.Net framework3.5的两种解决方法【转】

    近日有网友反映在windows10_64位系统电脑上安装Net framework3.5,操作时总失败,怎么办呢?小编下面就介绍win10 64位系统无法安装Net framework3.5的两种解决 ...

  8. AtCoder Regular Contest 088 E - Papple Sort(树状数组+结论)

    结论:每次把字符丢到最外面最优,用树状数组统计答案,把字符放到最外边后可以当成消失了,直接在树状数组上删掉就好. 感性理解是把字符丢到中间会增加其他字符的移动次数,但是丢到外面不会,所以是正确的. # ...

  9. FreeRTOSv9.0.0在STM32F103RCT6上的移植

    1.去官网下载源代码(FreeRTOSv9.0.0.exe) 2.取出Source文件夹,根据单片机和编译器不同,删除不需要的文件,如下图 3.在CORTEX_STM32F103_IAR文件夹中取出P ...

  10. struts标签错误:Can not find the tag library descriptor for "http://java.sun.com/jsp/jstl/core"

    今天使用eclipse开发ssh,出现Can not find the tag library descriptor for "http://java.sun.com/jsp/jstl/co ...