美文网首页
redis基础知识

redis基础知识

作者: FangHao | 来源:发表于2017-02-21 19:15 被阅读0次

    redis安装

    sudo apt-get install redis-server
    

    redis基本配置文件

    /lib/systemd/system/redis-server.service
    /etc/redis/redis.conf   --主要的配置文件,包含ip/端口/数据文件地址/日志地址/守护进程等
    

    基本配置

    在源文件/usr/local/redis目录下,文件redis.conf为配置文件
    绑定地址:如果需要远程访问,可将此行注释

    bind 127.0.0.1
    

    端口,默认为6379

    port 6379
    

    是否以守护进程运行
    如果以守护进程运行,则不会在命令行阻塞,类似于服务
    如果以非守护进程运行,则当前终端被阻塞,无法使用
    推荐改为yes,以守护进程运行

    daemonize no|yes
    

    数据文件

    dbfilename dump.rdb
    

    数据文件存储路径
    dir的默认值为./,表示当前目录
    推荐改为:dir /var/lib/redis
    使用配置文件方式启动

    直接运行redis-server会直接运行,阻塞当前终端
    一般配置文件都放在/etc/目录下

    sudo cp /usr/local/redis/redis.conf /etc/redis/
    

    推荐指定配置文件启动

    sudo redis-server /etc/redis/redis.conf
    

    停止redis服务

    ps ajx|grep redis
    sudo kill -9 redis的进程id
    

    数据操作

    • redis是key-value的数据,所以每个数据都是一个键值对
    • 值的类型分为五种:
    • 字符串string
    • 哈希hash
    • 列表list
    • 集合set
    • 有序集合zset

    全部命令参照 redis中文官网

    String基本命令

    设置键值

    set key value
    

    设置键值及过期时间,以秒为单位

    SETEX key seconds value
    

    设置多个键值

    MSET key value [key value ...]
    

    根据键获取值,如果不存在此键则返回(nil)

    GET key
    

    根据多个键获取多个值

    MGET key [key ...]
    

    hash基本命令

    • hash用于存储对象,对象的格式为键值对

    设置单个属性

    HSET key field value
    

    设置多个属性

    HMSET key field value [field value ...]
    

    获取一个属性的值

    HGET key field
    

    获取多个属性的值

    HMGET key field [field ...]
    

    获取所有属性和值

    HGETALL key
    

    获取所有的属性

    HKEYS key
    

    返回包含属性的个数

    HLEN key
    

    获取所有值

    HVALS key
    

    删除属性及值

    HDEL key field [field ...]
    

    list基本命令

    在头部插入数据

    LPUSH key value [value ...]
    

    在尾部插入数据

    RPUSH key value [value ...]
    

    在一个元素的前|后插入新元素

    LINSERT key BEFORE|AFTER pivot value
    

    移除并且返回 key 对应的 list 的第一个元素

    LPOP key
    

    移除并返回存于 key 的 list 的最后一个元素

    RPOP key
    

    返回list列表范围内的元素

    LRANGE key start stop
    

    裁剪列表,改为原集合的一个子集

    • start 和 end 偏移量都是基于0的下标
    • 偏移量也可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
    LTRIM key start stop
    

    set基本命令

    set是无序集合,唯一不重复

    添加元素

    SADD key member [member ...]
    

    获取所有元素

    smembers key
    

    返回集合元素个数

    scard key
    

    求多个集合的交集

    SINTER key [key ...]
    
    

    求某集合与其它集合的差集

    SDIFF key [key ...]
    

    求多个集合的合集

    SUNION key [key ...]
    

    判断元素是否在集合中

    SISMEMBER key member
    

    zset基本命令

    sorted sort有序集合,依靠用户自定义score来实现排序

    添加

    ZADD key score member [score member ...]
    

    发布订阅

    订阅

    SUBSCRIBE 频道名称 [频道名称 ...]
    

    取消订阅

    --如果不写参数,表示取消所有订阅
    UNSUBSCRIBE 频道名称 [频道名称 ...]
    

    发布

    PUBLISH 频道 消息
    

    主从配置

    主服务器

    vim /etc/redis/redis.conf
    bind 192.168.1.10
    

    从服务器

    vim /etc/redis/redis.conf
    bind 192.168.1.11
    slaveof 192.168.1.10:6379
    

    主从服务器分别重启服务然后

    redis-cli -h 192.168.1.10
    redis-cli -h 192.168.1.11
    

    相关文章

      网友评论

          本文标题:redis基础知识

          本文链接:https://www.haomeiwen.com/subject/oqbuwttx.html