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. 《Java程序设计》第7周学习总结 20165218 2017-2018-1

    20165218 2017-2018-1 <Java程序设计>第7周学习总结 教材学习内容总结 JDBC与MySQL数据库 数据库的功能:数据的存储.查询.修改.安全 MySQL:数据库: ...

  2. 使用adb录制手机屏幕视频

    adb shell screenrecord命令可以用来录制Android手机视频 screenrecord是一个shell命令,支持Android4.4(API level 19)以上,支持视频格式 ...

  3. 排座位&&Little Elephant And Permutation——排列dp的处理

    排列的问题,就是要把序列排个序,使之达到某种最优值或者统计方案数 dp可以解决部分排列问题. 通常的解决方案是,按照编号(优先级)排序决策,从左到右决策两种. 这里主要是第一个. 排座位• 有

  4. 如何在WIndows电脑上安装 SVN Server 实现代码版本控制

    One 下载-安装 SVN SVNServer  先去官网下载服务器版本的svn server,下载地址 :https://www.visualsvn.com/server/download/   选 ...

  5. Vue.js基础 笔记

    Vue.js的声明: < script src = “https://unpkg.com/vue” ></ script > el:值可以是CSS选择符.HTML元素.或者是返 ...

  6. CF835 C 前缀和

    100*100规模上第一象限坐标系上有1e5规模的点,每个点随时间在同一个值域内(最大10)周期递增,但初始值不同,给出一个矩阵和时间询问此时范围内点的值的和. 预处理初始时刻不同权值下的二维前缀和, ...

  7. Python学习笔记 (十二)偏函数

    摘抄:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014318447438 ...

  8. PHP与数据库

    连接数据库 Connect 访问数据库的数据之前,先要与数据库建立连接,使用mysql_connect()方法与数据库建立连接. mysql_connect()参数 <?php //server ...

  9. logstash 收集 IIS 日志实践

    IIS日志示例: 2017-02-20 00:55:40 127.0.0.1 GET /MkWebAPI/swagger/ui/index - 80 - 127.0.0.1 Mozilla/5.0+( ...

  10. ③ 设计模式的艺术-09.组合(Composite)模式

    使用组合模式的场景 类图当中有三个类,一个是Component(节点的统一接口),它的目的是为了统一节点的操作.接下来的两个实现类,一个则是非叶子节点(Composite),它可以有子节点.另外一个则 ...