Redis数据库的简单使用

Redis数据库的简单使用

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

数据结构如下:
string hash list set zset

string 命令如下:

设置一个指定key的值:set key value #value为string类型
获取指定key的值:get key
设置键值及过期时间,以秒为单位:setex key second value
设置多个键值可以使用mset命令:mset key1 value1 key2 value2
追加值: append key value

键命令:
查看数据库中所有键:keys *
查看包含某个字符的键:keys ‘xxxx*’
删除一个键值: del key #可以同时删除多个
判断键是否存在: exists key #如果返回值为1说明存在,为0则不存在
查看键类型: type key
设置过期时间: expire key second
查看过期时间:ttl key

hash命令:

设置单个属性:hset key 属性 value #value为string类型
设置多少属性: hmset key 属性1 value1 属性2 value2
获取指定键所有属性: hkeys key
获取指定键指定属性值:hget key 属性
获取指定键多个属性值: hmget key 属性1 属性2
获取所有属性的值: hvals key
删除属性hdel key 属性1 属性2

list命令:
插入:lpush key value1 value
插入:rpush key value1 value2
从指定元素前面或后面插入元素:linsert key before/after 现在元素 新元素
获取元素: lrange key start stop #start 为0 stop为-1时获取所有元素

指定索引的元素值:lset key index value
将前count次出现的值为value的元素移除 : lrem key count value #count为<0时 从头往后删除 ==0 删除全部

set命令:
无序集合
设置值:sadd key member1 member2 #member为string类型
返回所有的元素:smembers key
删除指定元素: srem key menber

zset 命令:
有序集合
每个元素都会关联⼀个double类型的score,表示权重,通过权重将元素从⼩到⼤排序
无修改操作
设置值:zadd key score1 member1 score2 member2 #member为string类型

获取:zrange key start stop #类似list
返回权重值在min和mix之间的成员:zrangebyscore key min max
返回某个成员的score:zscore key member
删除: zrem key member1 member2

与python交互

导入redis包

from redis import *

创建StrictRedis对象,与redis服务器建⽴连接

sr = StrictRedis()

sr对象就可以使用上面的方法去操作redis数据库了

在Django中,用redis存储session需要先在虚拟环境中安装redis包

pip install django-redis-sessions==0.5.6

同时还要修改setting文件,增加下面:

SESSION_ENGINE = 'redis_sessions.session'
SESSION_REDIS_HOST = 'localhost'
SESSION_REDIS_PORT = 6379    //默认为6379
SESSION_REDIS_DB = 2      //指定使用第二个数据库,默认有16个数据库即0-15
SESSION_REDIS_PASSWORD = ''
SESSION_REDIS_PREFIX = 'session'    //唯一标识码

如果不指定redis作为存储,则Django中默认使用Django提供的Django_session表进行存储。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值