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. Linux环境安装.NET运行环境

    Linux环境安装.NET运行环境 Linux环境安装.NET运行环境 1. 构建编译环境: (1) sudo apt-get install build-essential (2) sudo apt ...

  2. 【JavaScript】函数表达式

    一.前言        接着上一篇的内容,继续学习JavaScript. 二.内容       函数的声明 function functionName(arg0,arg1,arg2){ //函数体 } ...

  3. 获取AD域中SYSVOL和组策略首选项中的密码

    这种方法是最简单的,因为不需要特殊的“黑客”工具.所有的攻击必须做的是打开Windows资源管理器,并搜索域名为SYSVOL DFS共享的XML文件.在大多数情况下,以下XML文件将包含凭据:grou ...

  4. Linux下C高手成长过程----经典书籍推荐

    http://www.cnblogs.com/shanzhizi/archive/2012/07/10/2585357.html

  5. Linux(五)shell编程基础

    一.Linux shell简介 1.shell概述 Shell 是用户与内核进行交互操作的一种接口,目前最流行的 Shell 称为 bash Shell          Shell 是一门编程语言& ...

  6. 【loj6179】Pyh的求和

    Portal -->loj6179 Solution ​  这题其实有一个式子一喵一样的版本在bzoj,但是那题是\(m\)特别大然后只有一组数据  这题多组数据== ​    首先根据\(\v ...

  7. 图像处理之中值滤波介绍及C实现

    1 中值滤波概述 中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号平滑处理技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值. 中值滤波的基本原理是把数字图像或数字序 ...

  8. Java Socket TCP编程(Server端多线程处理)

    package com; import java.io.*; import java.net.Socket; /** * Socket Client * <p> * Created by ...

  9. bzoj 2530 [Poi2011]Party 构造

    2530: [Poi2011]Party Time Limit: 10 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 364  Solved:  ...

  10. libxml移植到android

    libxml是C语言写的xml解析库,是我们开发可移植程序的首选,下面讲述将其移植到android的步骤 1.下载已经配置好的源代码包android_libxml2.rar http://pan.ba ...