美文网首页
redis 手册

redis 手册

作者: 永不放弃_5537 | 来源:发表于2019-04-14 17:27 被阅读0次

启动 和停止

redis-server redis.conf

手动建立一个目录用来保存相关的配置文件和持久化文件和pid文件

如:redis

主要配置项:

redis.conf

daemonize yes/no 守护模式运行

dir /redis 持久化文件和配置文件保存目录

pidfile redis.pid 进程pid文件名

logfile redis.log  进程log文件名

dbfilename dump.rdb 持久化文件名

主要命令:

keys pattern *

字符串类型:

set key value

exists key

del key

type key

incr key  #incr posts:count

incrby key increment #incrby key 2

decrby key decrement decrby key 1

appent key value

strlen key

mset key value key2 value2

mget key key2

散列类型:

hset key field value

hget key field

hmset key field value field2 value2

hmget key field field2

hgetall key

hexists kye field

hsetnx key field value

hincrby key field increment

hdel key field field2

hkeys key

hvals key

列表类型:

lpush key value value

rpush key value value2

lpop key

rpop key

llen key

lrange key start stop

lrem key count value

ltrim key start end 只保留列表指定片段

ltrim+lpush 用来限制日志,只保留最新指定数量的记录。

ropolpush sourcekey destinationkey 将一个元素从一个列表移动到另一个列表

集合类型:

sadd key member member2

srem key member member2

smembers key

sismember key member

sdiff key key

sinter key key

sunicon key key

例:给记录增加标签

sadd post:24:tags  a b c d e f

scard key 显示集合中元素的个数

sdiffstore destinationkey key key

sinterstore destinationkey key key

suniconstore destinationkey key key

srandmember key count

spop key

有序集合:

zadd key score member score2 member2

zscore key member

zrange key start stop [withscores]

zrangeby score key min max limit offset count

zcard key 有序集合中元素的数量

zcount ke min max 指定范围元素个数

zrem key member 删除元素

zremrangebyscore key min max 按照分数范围删除元素

事务:

multi

sadd "user:2:followers",1

exec

过期时间 :

set a b

expire a 900

ttl a 显示key的距离过期的秒数。-2:已过期,-1 永不过期

persist key 清除key的过期时间 。变为永不过期

python使用redis

  import redis

        rds = redis.Redis(host=host, port=port, password=passwd, socket_timeout=10,db=0)

        rds.info()                          # redis信息

        rds.set(key, value)                  # 将值value关联到key

        rds['c1'] = 'bar'                    #塞数据,同上           

        rds.get(key)                        # 取key值

        rds.keys                            # 获取所有key值

        rds.del(key1,key2)                  # 删除key

        rds.rename(key,new_key2)            # 将key改名 存在覆盖

        rds.seten(key,value)                # 将值value关联到key,如果key存在不做任何动作

        rds.setex(key, value, 10800)        # 将值value关联到key,并设置key的过期时间

        rds.mset()                          # 同时设置一个或多个key-value对  如果key存在则覆盖

        rds.msetnx()                        # 同时设置一个或多个key-value对  如果有key存在则失败

        rds.mget(key1, key2, key3)          # 取多个key值  不存在返回nil

        rds.expire(key seconds)              # 设置key的过期时间

       

rds.persist(key)                    # 移除key的过期时间

        rds.ttl(key)                        # 查看超时时间 -1为不过期

        rds.sadd(key,value1)                # 将value1加入集合中  集合不重复

        rds.smembers(key)                    # 返回key中所有成员

        rds.scard(key)                      # 集合中元素的数量

        rds.srandmember(key)                # 对集合随机返回一个元素 而不对集合改动  当key不存在或key是空集时,返回nil

        rds.sinter(key1,key2)                # 两个集合的交集

        rds.sdiff(key1,key2)                # 两个集合的差集

        rds.sismember(key,value)            # 判断value元素是否是集合key的成员 1存在 0不存在

        rds.lpush(key,value1)                # 将value1加入列表中  从左到右

        rds.lpop(key,value1)                # 移除并返回列表key的头元素

        rds.llen(key)                        # 返回列表长度

        rds.sort(key)                        # 对列表、集合、有序集合排序[大列表排序非常影响性能,甚至把redis拖死]

        rds.append(key,value)                # 字符串拼接为新的value

        rds.ltrim(key, 0, -10)              # 保留指定区间内的元素,不在都被删除 0第一个 -1最后一个

        rds.incr(key , amount=1)            # 计数加1 默认1或请先设置key的数值

        rds.decr(key)                        # 计数减1 请先设置key的数值

        rds.save()                          # 保存数据

相关文章

网友评论

      本文标题:redis 手册

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