redis 下載安裝 & python 操作redis & django 連接redis丨【生長(zhǎng)吧!Python】
1. Redis 下載安裝
1.1 下載
-: https://github.com/microsoftarchive/Redis/releases
Windows 下載 msi 格式,安裝即可
下載比較慢的話,我把 3.0.504 版本的安裝包放在了網(wǎng)盤,需要可自行下載
鏈接:https://pan.baidu.com/s/1s8Do4PTpk4kTZCjMysy_7w
提取碼:riqm
1.2 安裝
我電腦上已經(jīng)安裝過(guò)了,一路默認(rèn)就可以了,中間可以換一下安裝路徑。
安裝好以后,我們可以給redis設(shè)置密碼,在 redis 安裝目錄中 redis.windows-service.conf 文件中進(jìn)行編輯
找到 # requirepass foobared 在下面添加一行,例如我的密碼是 root
除添加密碼外,還可以設(shè)置綁定IP,也就是說(shuō)可以讓局域網(wǎng)內(nèi)的其他主機(jī)也可以訪問(wèn)自己,找到 bind 這一行,在下面添加一行 bind 0.0.0.0
修改完密碼等配置后,將redis服務(wù)重新啟動(dòng)一下
【控制面板】–> 【管理工具】–> 【服務(wù)】
找到redis服務(wù),右鍵【重新啟動(dòng)】
redis 安裝完成后,就可以通過(guò)終端進(jìn)行操作
redis 默認(rèn)端口號(hào)為: 6379
MySQL 默認(rèn)端口號(hào)為:3306
MongoDB 默認(rèn)端口號(hào)為: 27017
sqlserver 默認(rèn)端口號(hào)為:1433
2. Python 操作redis
2.1 模塊安裝
pip install redis
2.2 詳細(xì)代碼
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') # 設(shè)置鍵值: 18203503747="6666" 且超時(shí)時(shí)間為10s(值寫入到redis時(shí)會(huì)自動(dòng)轉(zhuǎn)字符串) conn.set('18203503747', 'ruochen', ex=10) # 根據(jù)鍵獲取值: 如果存在獲取值(獲取到的是字節(jié)類型);不存在則返回 None value = conn.get('18203503747') print(value) print(value.decode())
b'ruochen' ruochen
2.2.2 通過(guò)連接池連接
# -*- coding: UTF-8 -*- '''================================================= @Project -> File :MyDjango -> redis_test2 @IDE :PyCharm @Author :ruochen @Date :2020/7/1 17:48 @Desc : ==================================================''' import redis # 創(chuàng)建redis 連接池(默認(rèn)連接池最大連接數(shù) 2**31=2147483648) pool = redis.ConnectionPool(host='192.168.1.4', port=6379, password='root', encoding='utf-8', max_connections=1000) # 去連接池中獲取一個(gè)連接 conn = redis.Redis(connection_pool=pool) # 設(shè)置鍵值:name='ruochen' 且超時(shí)時(shí)間為10秒(值寫入到redis時(shí)會(huì)自動(dòng)轉(zhuǎn)字符串) conn.set('name', 'ruochen', ex=10) # 根據(jù)鍵獲取值:如果存在獲取值(獲取到的是字節(jié)類型);不存在則返回None value = conn.get('name') print(value)
b'ruochen'
3. django 連接redis
可以在視圖函數(shù)中進(jìn)行如下操作
import redis from django.shortcuts import HttpResponse # 創(chuàng)建redis連接池 POOL = redis.ConnectionPool(host='192.168.1.6', port=6379, password='root', encoding='utf-8', max_connections=1000) def index(request): # 去連接池中獲取一個(gè)連接 conn = redis.Redis(connection_pool=POOL) conn.set('name', "ruochen", ex=10) value = conn.get('name') print(value) return HttpResponse("ok")
不過(guò)一般不會(huì)使用上述操作,因?yàn)閐jango 有專門的模塊 django-redis 【依賴redis模塊】
模塊安裝
pip install django-redis
詳細(xì)代碼
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): # 去連接池中獲取一個(gè)連接 conn = get_redis_connection("default") conn.set('nickname', "ruochen", ex=10) value = conn.get('nickname') print(value) return HttpResponse("OK")
【生長(zhǎng)吧!Python】有獎(jiǎng)?wù)魑幕馃徇M(jìn)行中:https://bbs.huaweicloud.com/blogs/278897
Django Python Redis
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。