redis 下载安装 & python 操作redis & django 连接redis丨【生长吧!Python】
1. redis 下载安装
1.1 下载
- 下载地址: https://github.com/microsoftarchive/redis/releases
- Windows 下载
msi
格式,安装即可
下载比较慢的话,我把
3.0.504
版本的安装包放在了网盘,需要可自行下载
链接:https://pan.baidu.com/s/1s8Do4PTpk4kTZCjMysy_7w
提取码:riqm
1.2 安装
-
我电脑上已经安装过了,一路默认就可以了,中间可以换一下安装路径。
-
安装好以后,我们可以给redis设置密码,在 redis 安装目录中
redis.windows-service.conf
文件中进行编辑
-
找到
# requirepass foobared
在下面添加一行,例如我的密码是root
-
除添加密码外,还可以设置绑定IP,也就是说可以让局域网内的其他主机也可以访问自己,找到
bind
这一行,在下面添加一行bind 0.0.0.0
-
修改完密码等配置后,将redis服务重新启动一下
【控制面板】–> 【管理工具】–> 【服务】
找到redis服务,右键【重新启动】
-
redis 安装完成后,就可以通过终端进行操作
redis 默认端口号为: 6379
MySQL 默认端口号为:3306
MongoDB 默认端口号为: 27017
sqlserver 默认端口号为:1433
2. Python 操作redis
2.1 模块安装
pip install redis
2.2 详细代码
2.2.1 直接连接
# -*- coding: UTF-8 -*-
'''=================================================
@Project -> File :MyDjango -> redis_test
@IDE :PyCharm
@Author :ruochen
@Date :2020/6/21 21:34
@Desc :
=================================================='''
import redis
# 直接连接redis
conn = redis.Redis(host='192.168.1.4', port=6379, password='root', encoding='utf-8')
# 设置键值: 18203503747="6666" 且超时时间为10s(值写入到redis时会自动转字符串)
conn.set('18203503747', 'ruochen', ex=10)
# 根据键获取值: 如果存在获取值(获取到的是字节类型);不存在则返回 None
value = conn.get('18203503747')
print(value)
print(value.decode())
b'ruochen'
ruochen
2.2.2 通过连接池连接
# -*- coding: UTF-8 -*-
'''=================================================
@Project -> File :MyDjango -> redis_test2
@IDE :PyCharm
@Author :ruochen
@Date :2020/7/1 17:48
@Desc :
=================================================='''
import redis
# 创建redis 连接池(默认连接池最大连接数 2**31=2147483648)
pool = redis.ConnectionPool(host='192.168.1.4', port=6379, password='root', encoding='utf-8', max_connections=1000)
# 去连接池中获取一个连接
conn = redis.Redis(connection_pool=pool)
# 设置键值:name='ruochen' 且超时时间为10秒(值写入到redis时会自动转字符串)
conn.set('name', 'ruochen', ex=10)
# 根据键获取值:如果存在获取值(获取到的是字节类型);不存在则返回None
value = conn.get('name')
print(value)
b'ruochen'
3. django 连接redis
-
可以在视图函数中进行如下操作
import redis from django.shortcuts import HttpResponse # 创建redis连接池 POOL = redis.ConnectionPool(host='192.168.1.6', port=6379, password='root', encoding='utf-8', max_connections=1000) def index(request): # 去连接池中获取一个连接 conn = redis.Redis(connection_pool=POOL) conn.set('name', "ruochen", ex=10) value = conn.get('name') print(value) return HttpResponse("ok")
-
不过一般不会使用上述操作,因为django 有专门的模块
django-redis
【依赖redis模块】 -
模块安装
pip install django-redis
-
详细代码
settings.py
中添加配置CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://192.168.1.6:6379", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", "CONNECTION_POOL_KWARGS": { "max_connections": 1000, "encoding": 'utf-8' }, "PASSWORD": "root" } } }
-
django 视图中操作 redis
from django.shortcuts import HttpResponse from django_redis import get_redis_connection def index(request): # 去连接池中获取一个连接 conn = get_redis_connection("default") conn.set('nickname', "ruochen", ex=10) value = conn.get('nickname') print(value) return HttpResponse("OK")
【生长吧!Python】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/278897
- 点赞
- 收藏
- 关注作者
评论(0)