Redis

一、Redis介绍:

Redis: 它是一个开源的非关系型的高性能的键值对的数据库
Redis: 是一个开源的高性能键值对数据库。
它通过提供多种键值数据类型来适应不同场景下的存储需求,
并且借助许多高层级的接口使其可以胜任,如缓存、队列系统的不同角色。

NoSQL:非关系型数据库.

Redis官网: http://redis.io/

源码托管在github
https://github.com/antirez/redis

二、下载说明:

windows版本:
下载地址:https://github.com/MicrosoftArchive/redis/releases
下载:Redis-x64-3.2.100.zip
linux版本:
下载地址:https://redis.io/download
下载:redis-3.2.8.tar.gz

三、安装:

解压“资料\redis\ Redis-x64-3.2.100.zip”
  1.配置文件: 
-- redis.windows.conf(核心)
   经常需要修改的配置:
     bind 127.0.0.1 (ip)
     prot 6379 (端口)

    -- redis.windows-service.conf (windows服务相关配置文件)

  2.redis-server.exe(服务端命令)

  3.redis-cli.exe(客户端命令)

  启动Redis服务器
  1.windows服务:
    a.注册服务: 
      redis-server --service-install redis.windows-service.conf --loglevel verbose

b.卸载服务: redis-server --service-uninstall

c.启动服务: redis-server --service-start

d.停止服务: redis-server --service-stop

  2.用redis-server.exe命令直接启动:
redis-server redis.windows.conf

使用redis-cli客户端
1.连接服务器:
redis-cli (默认连接本机的6379端口)
redis-cli -h 127.0.0.1 -p 6379 (-h连接的ip地址 -p连接的端口)
2.ping 检查服务器是否正常运行

 Redis-Desktop-Manager(Redis桌面管理器)
 官方下载地址:https://redisdesktop.com/download
 下载:redis-desktop-manager-0.8.8.384.exe

四、Redis的使用:

1. 入门
   set key value : 设置一个key的value值
   -- key: 字符串
   -- value: 字符串

   get key: 获取指定的key的value值
  1. 数据库有16个
    切换数据库:select [0-15]

五、基本命令:

1. keys pettern(* ? [1-3])
   KEYS *  (查询所有的键)

2. exists: 判断一个键是否存在。如果键存在则返回整数类型1,否则返回0。
   
3. type: 获得键值的数据类型。
返回值可能是string(字符串)、hash(散列类型)、
list(列表类型)、set(集合类型)、zset(有序集合类型)。

4. del: 删除键。可以删除一个或多个键,返回值是删除的键的个数.
   
5. help 命令

六、数据类型:

    1. 字符串string(value)
        key --> value(string)
       a. 赋值与取值(单个key的值)
          set key value
          get key
    
       b. 赋值与取值(多个key的值)
      mset key value [key value …]
          mget key [key …]

       c. 递增
      incr key
          incrby key increment

       d. 递减
          decr key
          decrby key decrement

       e. 向尾部追加
          append key value

       f. 获取字符串长度
      strlen key
          
       
       注意:赋值时key一样,value值会覆盖
    2. 散列类型hash(Map)
       key --> value的值为:{field : fieldValue, field : fieldValue}

       a. 赋值与取值
          hset key field value: 为指定的key 中的field 字段设置值
          hget key field : 取指定key中的field字段值

          hmset key field value [field value ...] : 设置指定key的多个字段值
          hmget key field [field ...] : 取指定key的多个字段值

          hgetall key : 取指定key中的所有字段与值

    b. 判断字段是否存在
       hexists key field

    c. 删除字段
       hdel key field [field ...]

    d. 获取字段或字段值
           hkeys key : 获取Key的所有字段field
           hvals key : 获取key的所有字段对应的字段值

    e. 获取字段的长度
       hlen key
           返回key 中字段的数量
          

       注意:赋值时key的field一样,value值会覆盖,不一样就会新增一个field.
    3. 列表类型list(List)
       a. 向列表两端增加元素
      LPUSH key value [value ...] : 向key的左边增加元素
          RPUSH key value [value ...] : 向key的右边增加元素
    
       b.从列表两端弹出元素
     LPOP key: 从左边弹出指定key中的元素值 (弹出时会删除key中元素值)
     RPOP key: 从右边弹出指定key中的元素值 (弹出时会删除key中元素值)
      
       c. 获取列表中元素的长度
      LLEN key

       d. 获取列表中指定范围的元素值
      LRANGE key start stop

       e. 删除列表中指定元素值
      LREM key count value

       f. 获得列表中指定索引的元素值
      LINDEX key index

       注意:list列表数据类型,元素值可以重复(有序)
    4. 集合类型set(Set)
       a. 增加元素
          SADD key member [member ...] 

       b. 删除元素
          SREM key member [member ...]

       c. 获得集合中的所有元素
      SMEMBERS key

       d. 判断元素是否在集合中
          SISMEMBER key member
       
       e. 获得集合中元素的长度
      SCARD key
        
      
       注意:set集合数据类型,元素值不能重复(无序)
    5. 有序集合zset(Set + 排序分数)
       a、增加元素
      ZADD key score member [score member ...]

       b、获取指定范围的元素值
          ZRANGE key start stop [WITHSCORES]

       c、按照排序范围删除元素值
      ZREMRANGEBYRANK key start stop

       d、按照分数范围删除元素
      ZREMRANGEBYSCORE key min max


       注意:zset有序集合数据类型,元素值不能重复(有序)

七、Java客户端Jedis:

Jedis类
JedisPool类
ShardedJedis类

八、redis的可视化工具

使用RedisDesktopManager,具体可以百度

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,240评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,328评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,182评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,121评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,135评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,093评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,013评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,854评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,295评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,513评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,678评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,398评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,989评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,636评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,801评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,657评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,558评论 2 352

推荐阅读更多精彩内容