# 一、基础命令

  • info命令:

    • # Server:查看系统信息,包括redis的版本信息,使用的端口和process_id和依赖的gcc版本等
    • # Clients:客户端连接数量等
    • # Memory:内存的使用情况
    • # Persistence:持久化备份的参数信息
    • # State:redis状态信息
    • # Replication:主从同步的相关数据
    • # Keyspace:显示已有的空间及空间内的key的数量,在redis客户端通过select index选择相应的空间,类似于选择数据库表,不同的表中存储着不同的数据   image
    • 在redis.conf文件中可以进行空间数量的设置,默认值为16:即可以使用的空间是0-15   image
  • flushdb命令:清除当前keyspace空间的所有键值

  • flushall命令:清除所有keyspace空间的所有键值

  • dbsize命令:当前keyspace的键的数量

  • save命令:人工触发的对redis的持久化

  • quit命令:退出当前redis客户端的连接

# 二、键命令

  • set key value:设置键值
  • del key:删除键,成功则返回1,失败则返回0
  • exists key:判断键是否存在,存在则返回1,不存在则返回0
  • ttl key:time to leave,返回的是键的过期时间,单位时间是秒,若返回-1,则代表该键不会过期,返回-2表示该键不存在
  • expire key time:设置键的过期时间,如expire a 10表示设置键a的过期时间为10秒
  • type key:返回键的类型,如string,hash等
  • randomkey:返回随机的key(键)
  • rename key1 key2:将键名进行重命名,如key a b则将键a的名改为键b,若替换的键名存在,则会将已有的键进行覆盖,即将b的键值覆盖,得到的是key:b,value:a
  • renamenx key1 key2:加了nx结尾的rename命令会进行一定的逻辑判断,该命令会判断该替换的键是否存在,如果存在则返回0,表示替换失败,若不存在则返回1,表示替换成功

# 三、数据结构命令

# String字符串

  • setex key time value:创建键的时候为键设置其有效时间,单位时间为秒,psetex设置的时间单位为毫秒
  • getrange key start end:获取字符串的某一片段(start到end的间字段)
  • getset key value:为key赋上新的值,返回被替换之前的值。
  • mset key value key value:进行多个键值的设置
  • mget key1 key2 key3:进行多个键值的获取,获取到键key1,key2,key3的值
  • strlen key:返回键值的长度
  • msetnx key value key value:进行批量的键设置,需要设置的键不存在才会赋值成功,该命令具有原子性,及要么全部设置成功返回1,要么都是失败返回0。
  • incr key:将类型的Integer的键值进行加一操作
  • incrby key number:为键值一次性加上number的数,如incr 1 100,则表示为键为1的值增加100.
  • decr key:将类型的Integer的键值进行减一操作
  • decrby key number:为键值一次性减去number的数
  • append key str:为key的值加上字符串str

# Hash哈希

  • hset key filed value:设置哈希键值
  • hexists key field:判断键是否存在
  • hget key field:获取键中filed所对应的值
  • hgetall key:获取键中所有的field和对应的value
  • hkeys key:获取键中 所有的filed值
  • hvals key:获取键中所有的value值
  • hlen key:获取键中filed的数量
  • hmset key field name field name:批量设置键中的field和value
  • hmget key field field:批量获取键中field的value
  • hdel key field field:删除键中的多个field及其值
  • hsetnx key field value:若存在这个field,则设置失败返回0,否则返回1

# List列表

  • lpush key value value:将多个value添加到key中,添加的过程是将value从链表头部一个一个插入,及最后一个加入的是在链表的头部
  • llen key:获取key的数量
  • lrange key startIndex stopIndex:获取key列表指定下标范围内的元素
  • lindex index:获取指定下标的元素值
  • lpop key:移除key列表的首个(头)元素
  • rpop key:移除key列表的最后(末尾)元素

# Set集合

  • sadd key value value:将多个value加入key集合中
  • scard key:返回集合中的数量
  • smembers key:返回集合中的所有成员
  • sdiff key1 key2:返回key1与key2的差值,即key1减去ke1和key2中共同存在的元素
  • sinter key1 key2:返回key1与key2的交集
  • sunion key1 key2:返回key1与key2的并集
  • srandmember key1 number:返回集合中的随机的number个数
  • sismember key member:判断member是否为集合key中的元素,是则返回1,不是则返回0
  • srem key value value:移除集合中的多个元素
  • spop key:随机移除并返回移除的元素

# Sortedset有序集合

  • zadd key score member score member:为有序集合添加多个成员元素,score为member的值,且集合按score的值进行排序
  • zcard key:返回集合中成员的数量
  • zscore key member:返回member元素的score
  • zcount key min max:返回score在min到max范围内的member数量
  • zrank key member:返回member的下标
  • zrange key min max:返回score在min到max范围内的所有member
  • zrange key min max withscores:返回score在min到max范围内的所有member及其对应的score

# 四、安装流程

# redis的安装(Linux环境)

  1. 下载需要的redis版本 (opens new window) ,将redis压缩包解压并进入其根目录tar -zxvf redis-4.0.8.tar.gz -C /home/bigDataPresentationSys/,执行make命令进行编译。
    • 如果出现各种坑爹问题,参考这篇 (opens new window)
    • 坑爹一:注意允许的用户,我是在root用户下才运行成功的(应该跟权限有关)
    • 坑爹二:尽量用官方稳定版本的,减少入一些奇奇怪怪的坑

  1. 执行make test命令检测是否编译成功,在执行命令的时候可能会出现You need tcl 8.5 or newer in order to run the Redis test的错误,通过yum install tcl进行tcl的安装并重新编译即可。

1

# redis的基本操作

  1. redis服务的启动及关闭

    • 进入redis根目录下的src文件夹,然后运行./redis-server启动redis服务端,键盘按control + C关闭服务,或者输入命令kill -9 PID(PID为启动redis的PID),或者使用客户端的命令——./redis-cli -h 127.0.0.1 shutdown进行关闭   2

  2. redis的持久化及及基本的数据操作

    • 通过redis-cli的shutdown的话redis会进行持久化(存储到磁盘上),即下次启动数据还在,若用control + C关闭redis,即存储的数据会消失。在client执行save命令的话,可以进行人工的持久化操作
    • redis的src目录下执行./redis-cli启动客户端(redis-server已启动的情况,执行命令ping,若返回pong则连接成功),通过set key value进行数据的设置,通过get key进行相应键值的获取,通过keys *获取所有的key

  3. redis修改启动的端口号

    • 通过执行指定执行的端口进行修改:
      • ./redis-server --port 6380:启动redis服务
      • ./redis-cli -p 6380:启动redis客户端
      • ./redis-cli -p 6380 shutdown:关闭redis服务
    • 通过执行指定的配置文件进行启动:
      • 修改根目录下的redis-conf文件,将port(端口)进行修改,执行命令 ./redis-server ../redis-conf,即可根据配置文件进行启动

  4. redis修改启动密码

    • 在redis根目录下执行sudo vim redis-conf命令进行配置文件编辑,通过/ + requirepass(搜索的单词)进行搜索,n可以匹配下一个,shift + n可以匹配上一个,找到位置后修改密码,即redis客户端启动的时候需要输入密码才能启动,如./redis-cli -a 1991111 image
Last Updated: 2023-2-6 10:35:39 ├F10: PM┤