Django中redis的使⽤⽅法(包括安装、配置、启动)⼀、安装redis:
1.下载:
wget dis.io/releases/redis-3.2.
2.解压
tar -zxvf redis-3.2.
3.复制,放到/usr/local⽬录下
sudo mv ./redis-3.2.8 /usr/local/redis
4.进⼊到redis⽬录下
cd /usr/local/redis/
5.⽣成
sudo make
6.测试,时间会⽐较长
sudo make test
7.安装,将redis的命令安装到usr/local/bin/⽬录中
sudo make install
8.安装成功后,进⼊usr/local/bin/⽬录中查看:
cd /usr/local/bin
9.将配置⽂件复制放到/etc/redis⽬录下:
sudo cp /usr/local/f /etc/f
可能刚开始etc下没有redis⽬录,需要⾃⼰⼿动创建⼀个redis⽂件夹。
以上在第6步的时候可能会遇到这样的问题:
You need tcl 8.5 or newer in order to run the Redis testmake: *** [test] Error 1
解决办法:安装tcl
wget downloads.sourceforge/tcl/tcl8.6.
sudo tar xzvf tcl8.6. -C /usr/local/
cd /usr/local/tcl8.6.1/unix/
sudo ./configure
sudo make
sudo make install
⼆、配置redis:
配置信息在/etc/f下,打开sudo vi /etc/f。
核⼼配置选项:
绑定ip:bind 127.0.0.1
端⼝号:port 6379
是否以守护进程运⾏:daemonize yes 必须改为yes
数据库⽂件:dbfilename dump.db
数据库⽂件存储路径:dir /var/lib/redis 可改可不改,改的话提前创建好⽂件夹
⽇志⽂件:logfile /var/log/redis/redis-server.log 必须要改,提前创建好⽂件夹
数据库,默认有16个:database 16
主从复制:slaveof
配置⼩结:主要更改两块:1,守护进程;2.⽇志⽂件路径
三、启动redis:
1.根据配置⽂件启动redis服务器
sudo redis-server /etc/f
2.启动redis客户端:
redis-cli
3.输⼊ping命令测试:
127.0.0.1:6379> pingPONG
4.关闭redis服务器:
ps aux|grep redis # 查看redis进程号kill -9 pid redis进程号 # 关闭redis服务器
5.切换数据库:默认有16个,通过0-15来标识,默认是第⼀个数据库0号数据库。
select n
四、redis的数据操作:
2.1查看左右的键:keys *
2.2查看某个键是否存在,存在返回1不存在返回0:exists key1
2.3查看键的值对应的数据类型:type key1redis支持的五种数据类型
2.4删除键值对:del key1 key2
2.5设置键的过期时间,如果没有指定默认⼀直存在:expire key seconds
2.6查看键的有效时间:ttl key1
2.7清空数据库:flushall
3.string类型的基本操作:
3.1保存
set key value 保存单个键值对 mset key1 value1 key2 value2 保存多个键值对 setex key seconds value 设置键值和过期时间 append key value追加值
3.2获取
get key 获取单个 mget key1 key2 获取多个
3.3删除
del key
4 hash类型的基本操作:
4.1保存
hset key field value #设置单个属性
hmset key field1 value1 field2 value2 ... #设置多个属性
4.2获取
hkeys key # 获取指定键的所有属性
hget key field # 获取单个属性的值
hmget key field1 field2 ... # 获取多个属性的值
hvals key # 获取所有属性的值
4.3删除
del key # 删除整个hash的键和值
hdel key field1 field2 ... # 删除属性和属性对应的值
4.4关于hash类型的个⼈理解:
可以将hash类型理解为⽤来存储对象:
5 list类型的基本操作:
5.1保存
lpush key value1 value2 ... #从左侧依次插⼊数据
rpush key value1 value2 ... #从右侧依次插⼊数据
linsert key before或after 现有元素新元素 #从指定元素的前或后插⼊新元素
5.2获取
lrange key start stop
start、stop为元素的下标索引,从左侧开始,第⼀个元素为0,-1标识最后⼀个元素。获取所有的元素:lrange key 0 -1 5.3删除指定元素
lrem key count value
将列表中前count次出现的值为value的元素移除。
count > 0: 从头到尾移除
count < 0: 从尾到头移除
count = 0: 移除所有
6.set类型的基本操作
特点:⽆序集合、元素唯⼀性不重复、没有修改操作
6.1增加元素
sadd key member1 member2 ...
6.2获取元素
smembers key # 返回所有元素
6.3删除指定元素
srem key member1 member2 ...
7.zset类型的数据操作
特点:有序集合、元素唯⼀性不重复、没有修改操作、每个元素都会关联⼀个double类型的权重,根据权重从⼩到⼤排列7.1增加
zadd key score1 member1 score2 member2 ...
7.2获取
zrange key start stop # 根据索引获取
zrangebyscore key min max # 获取权重在min和max之间的数据
zscore key member # 返回成员member的score值
7.3删除
zrem key member1 member2 ... # 删除指定元素
zremrangebyscore key min max #删除权重在指定范围的元素
五、redis与python进⾏交互:
1.在虚拟环境中安装redis包:
pip install redis
2.调⽤模块:
from redis import StrictRedis
3.创建对象:
sr = StrictRedis(host='localhost', port=6379, db=0) # 默认就是这样的值,不写也⾏。
4.⽤sr这个对象操作redis,将redis中的命令当作函数让sr调⽤就ok。
六、Django框架中session存储到redis中的配置
默认情况下session是存储在数据库中的,但是当⽤session保存⽤户的状态时,⽤户频繁的访问服务器,会增⼤数据库的压⼒,也会降低⽤户访问的速度。为了解决这个问题将session存储到redis中。
第⼀种配置⽅法:(不使⽤Django中session默认的存储⽅式,直接将session存储的地⽅配置到redis中)
# 1.在虚拟环境中安装包
pip install django-redis-sessions==0.5.6
# 2.在Django项⽬的settings⽂件中增加下⾯的配置
SESSION_ENGINE = 'redis_sessions.session'
SESSION_REDIS_HOST = 'localhost'
SESSION_REDIS_PORT = 6379
SESSION_REDIS_DB = 2
SESSION_REDIS_PASSWORD = ''
SESSION_REDIS_PREFIX = 'session'
第⼆种配置⽅法:(先将Django中的缓存设置为redis,然后将session的存储地⽅设置为Django的缓存中)
#1.先在虚拟环境中安装包
pip install django_redis
#2. 设置redis作为django的缓存设置
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
# 把这⾥缓存你的redis服务器ip和port
"LOCATION": "redis://172.16.179.142:6379/12",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
}
}
# 3.设置redis存储django的session信息
SESSION_ENGINE = "ib.sessions.backends.cache"
SESSION_CACHE_ALIAS = "default"
以上这篇Django中redis的使⽤⽅法(包括安装、配置、启动)就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论