欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django中redis的使用方法(包括安裝、配置、啟動(dòng))

 更新時(shí)間:2018年02月21日 20:25:53   作者:Blog的猿序程個(gè)一  
下面小編就為大家分享一篇Django中redis的使用方法(包括安裝、配置、啟動(dòng)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

一、安裝redis:

1.下載:

wget http://download.redis.io/releases/redis-3.2.8.tar.gz

2.解壓

tar -zxvf redis-3.2.8.tar.gz

3.復(fù)制,放到/usr/local目錄下

sudo mv ./redis-3.2.8 /usr/local/redis

4.進(jìn)入到redis目錄下

cd /usr/local/redis/

5.生成

sudo make

6.測(cè)試,時(shí)間會(huì)比較長(zhǎng)

sudo make test

7.安裝,將redis的命令安裝到usr/local/bin/目錄中

sudo make install

8.安裝成功后,進(jìn)入usr/local/bin/目錄中查看:

cd /usr/local/bin

9.將配置文件復(fù)制放到/etc/redis目錄下:

sudo cp /usr/local/redis/redis.conf /etc/redis/redis.conf

可能剛開(kāi)始etc下沒(méi)有redis目錄,需要自己手動(dòng)創(chuàng)建一個(gè)redis文件夾。

以上在第6步的時(shí)候可能會(huì)遇到這樣的問(wèn)題:

You need tcl 8.5 or newer in order to run the Redis testmake: *** [test] Error 1

解決辦法:安裝tcl

wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz 
sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/ 
cd /usr/local/tcl8.6.1/unix/ 
sudo ./configure 
sudo make 
sudo make install

二、 配置redis:

配置信息在/etc/redis/redis.conf下,打開(kāi)sudo vi /etc/redis/redis.conf。

核心配置選項(xiàng):

綁定ip:bind 127.0.0.1

端口號(hào):port 6379

是否以守護(hù)進(jìn)程運(yùn)行:daemonize yes  必須改為yes

數(shù)據(jù)庫(kù)文件:dbfilename dump.db  

數(shù)據(jù)庫(kù)文件存儲(chǔ)路徑:dir /var/lib/redis  可改可不改,改的話提前創(chuàng)建好文件夾

日志文件:logfile /var/log/redis/redis-server.log  必須要改,提前創(chuàng)建好文件夾

數(shù)據(jù)庫(kù),默認(rèn)有16個(gè):database 16

主從復(fù)制:slaveof

配置小結(jié):主要更改兩塊:1,守護(hù)進(jìn)程;2.日志文件路徑

三、啟動(dòng)redis:

1.根據(jù)配置文件啟動(dòng)redis服務(wù)器

sudo redis-server /etc/redis/redis.conf 

2.啟動(dòng)redis客戶端:

redis-cli

3.輸入ping命令測(cè)試:

127.0.0.1:6379> pingPONG

4.關(guān)閉redis服務(wù)器:

ps aux|grep redis # 查看redis進(jìn)程號(hào)kill -9 pid redis進(jìn)程號(hào) # 關(guān)閉redis服務(wù)器

5.切換數(shù)據(jù)庫(kù):默認(rèn)有16個(gè),通過(guò)0-15來(lái)標(biāo)識(shí),默認(rèn)是第一個(gè)數(shù)據(jù)庫(kù)0號(hào)數(shù)據(jù)庫(kù)。

select n

四、redis的數(shù)據(jù)操作:

1.redis的存儲(chǔ)格式為key-value格式。key是字符串類型,value的類型有5種:string、hash、list、set、zset。

2.redis中關(guān)于鍵的常見(jiàn)的操作:

   2.1查看左右的鍵:keys *

   2.2查看某個(gè)鍵是否存在,存在返回1不存在返回0:exists key1

   2.3查看鍵的值對(duì)應(yīng)的數(shù)據(jù)類型:type key1

   2.4刪除鍵值對(duì):del key1 key2

   2.5設(shè)置鍵的過(guò)期時(shí)間,如果沒(méi)有指定默認(rèn)一直存在:expire key seconds

   2.6查看鍵的有效時(shí)間:ttl key1

   2.7清空數(shù)據(jù)庫(kù):flushall

3.string類型的基本操作:

3.1保存

set key value  保存單個(gè)鍵值對(duì) mset key1 value1 key2 value2  保存多個(gè)鍵值對(duì) setex key seconds value  設(shè)置鍵值和過(guò)期時(shí)間 append key value追加值

3.2獲取

get key  獲取單個(gè) mget key1 key2  獲取多個(gè)

3.3刪除

del key

4 hash類型的基本操作:

4.1保存

hset key field value #設(shè)置單個(gè)屬性

hmset key field1 value1 field2 value2 ... #設(shè)置多個(gè)屬性

4.2獲取

hkeys key # 獲取指定鍵的所有屬性
hget key field # 獲取單個(gè)屬性的值
hmget key field1 field2 ... # 獲取多個(gè)屬性的值
hvals key # 獲取所有屬性的值

4.3刪除

del key # 刪除整個(gè)hash的鍵和值
hdel key field1 field2 ... # 刪除屬性和屬性對(duì)應(yīng)的值

4.4關(guān)于hash類型的個(gè)人理解:

可以將hash類型理解為用來(lái)存儲(chǔ)對(duì)象:

5 list類型的基本操作:

5.1保存

lpush key value1 value2 ... #從左側(cè)依次插入數(shù)據(jù)
rpush key value1 value2 ... #從右側(cè)依次插入數(shù)據(jù)
linsert key before或after 現(xiàn)有元素 新元素 #從指定元素的前或后插入新元素

5.2獲取

lrange key start stop 

start、stop為元素的下標(biāo)索引,從左側(cè)開(kāi)始,第一個(gè)元素為0,-1標(biāo)識(shí)最后一個(gè)元素。獲取所有的元素:lrange key 0 -1

5.3刪除指定元素

lrem key count value

將列表中前count次出現(xiàn)的值為value的元素移除。

count > 0: 從頭到尾移除

count < 0: 從尾到頭移除

count = 0: 移除所有

6.set類型的基本操作

特點(diǎn):無(wú)序集合、元素唯一性不重復(fù)、沒(méi)有修改操作

6.1增加元素

sadd key member1 member2 ...

6.2獲取元素

smembers key # 返回所有元素

6.3刪除指定元素

srem key member1 member2 ...

7.zset類型的數(shù)據(jù)操作

特點(diǎn):有序集合、元素唯一性不重復(fù)、沒(méi)有修改操作、每個(gè)元素都會(huì)關(guān)聯(lián)一個(gè)double類型的權(quán)重,根據(jù)權(quán)重從小到大排列

7.1增加

zadd key score1 member1 score2 member2 ...

7.2獲取

zrange key start stop  # 根據(jù)索引獲取

zrangebyscore key min max  # 獲取權(quán)重在min和max之間的數(shù)據(jù)
zscore key member  # 返回成員member的score值

7.3刪除

zrem key member1 member2 ... # 刪除指定元素
zremrangebyscore key min max #刪除權(quán)重在指定范圍的元素

五、redis與python進(jìn)行交互:

1.在虛擬環(huán)境中安裝redis包:

pip install redis
 

2.調(diào)用模塊:

from redis import StrictRedis
 

3.創(chuàng)建對(duì)象:

sr = StrictRedis(host='localhost', port=6379, db=0)  # 默認(rèn)就是這樣的值,不寫(xiě)也行。
 

4.用sr這個(gè)對(duì)象操作redis,將redis中的命令當(dāng)作函數(shù)讓sr調(diào)用就ok。

六、Django框架中session存儲(chǔ)到redis中的配置

默認(rèn)情況下session是存儲(chǔ)在數(shù)據(jù)庫(kù)中的,但是當(dāng)用session保存用戶的狀態(tài)時(shí),用戶頻繁的訪問(wèn)服務(wù)器,會(huì)增大數(shù)據(jù)庫(kù)的壓力,也會(huì)降低用戶訪問(wèn)的速度。為了解決這個(gè)問(wèn)題將session存儲(chǔ)到redis中。

第一種配置方法:(不使用Django中session默認(rèn)的存儲(chǔ)方式,直接將session存儲(chǔ)的地方配置到redis中)

# 1.在虛擬環(huán)境中安裝包
pip install django-redis-sessions==0.5.6

# 2.在Django項(xiàng)目的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中的緩存設(shè)置為redis,然后將session的存儲(chǔ)地方設(shè)置為Django的緩存中)

#1.先在虛擬環(huán)境中安裝包
pip install django_redis

#2. 設(shè)置redis作為django的緩存設(shè)置
CACHES = {
 "default": {
  "BACKEND": "django_redis.cache.RedisCache",
  # 把這里緩存你的redis服務(wù)器ip和port
  "LOCATION": "redis://172.16.179.142:6379/12",
  "OPTIONS": {
   "CLIENT_CLASS": "django_redis.client.DefaultClient",
  }
 }
}

# 3.設(shè)置redis存儲(chǔ)django的session信息
SESSION_ENGINE = "django.contrib.sessions.backends.cache"
SESSION_CACHE_ALIAS = "default"

以上這篇Django中redis的使用方法(包括安裝、配置、啟動(dòng))就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python使用fastapi快速編寫(xiě)一個(gè)增刪改查的接口

    Python使用fastapi快速編寫(xiě)一個(gè)增刪改查的接口

    這篇文章主要為大家詳細(xì)介紹了Python如何使用fastapi快速編寫(xiě)一個(gè)增刪改查的接口,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • Python使用ffmpeg合成視頻、音頻的實(shí)現(xiàn)方法

    Python使用ffmpeg合成視頻、音頻的實(shí)現(xiàn)方法

    這篇文章主要介紹了Python使用ffmpeg合成視頻、音頻,通過(guò)本文的學(xué)習(xí)能幫助大家了解如何在python中調(diào)用ffmpeg模塊,對(duì)此進(jìn)行音視頻合并,完成視頻合成,需要的朋友可以參考下
    2022-04-04
  • Python subprocess模塊功能與常見(jiàn)用法實(shí)例詳解

    Python subprocess模塊功能與常見(jiàn)用法實(shí)例詳解

    這篇文章主要介紹了Python subprocess模塊功能與常見(jiàn)用法,結(jié)合實(shí)例形式詳細(xì)分析了subprocess模塊功能、常用函數(shù)相關(guān)使用技巧,需要的朋友可以參考下
    2018-06-06
  • 淺析python打包工具distutils、setuptools

    淺析python打包工具distutils、setuptools

    python包在開(kāi)發(fā)中十分常見(jiàn),一般的使用套路是所有的功能做一個(gè)python模塊包,打包模塊,然后發(fā)布,安裝使用。這篇文章給大家介紹了python打包工具distutils、setuptools的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2018-04-04
  • 詳解pyqt5 動(dòng)畫(huà)在QThread線程中無(wú)法運(yùn)行問(wèn)題

    詳解pyqt5 動(dòng)畫(huà)在QThread線程中無(wú)法運(yùn)行問(wèn)題

    這篇文章主要介紹了詳解pyqt5 動(dòng)畫(huà)在QThread線程中無(wú)法運(yùn)行問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Python實(shí)現(xiàn)將16進(jìn)制字符串轉(zhuǎn)化為ascii字符的方法分析

    Python實(shí)現(xiàn)將16進(jìn)制字符串轉(zhuǎn)化為ascii字符的方法分析

    這篇文章主要介紹了Python實(shí)現(xiàn)將16進(jìn)制字符串轉(zhuǎn)化為ascii字符的方法,結(jié)合實(shí)例形式分析了Python 16進(jìn)制字符串轉(zhuǎn)換為ascii字符的實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-07-07
  • Django靜態(tài)文件配置request對(duì)象方法ORM操作講解

    Django靜態(tài)文件配置request對(duì)象方法ORM操作講解

    這篇文章主要為大家介紹了Django靜態(tài)文件配置request對(duì)象方法ORM操作,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • pytorch實(shí)踐線性模型3d詳解

    pytorch實(shí)踐線性模型3d詳解

    這篇文章主要介紹了pytorch實(shí)踐線性模型3d詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • python @property的用法及含義全面解析

    python @property的用法及含義全面解析

    下面小編就為大家分享一篇python @property的用法及含義全面解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • 使用Python和scikit-learn創(chuàng)建混淆矩陣的示例詳解

    使用Python和scikit-learn創(chuàng)建混淆矩陣的示例詳解

    這篇文章主要介紹了使用Python和scikit-learn創(chuàng)建混淆矩陣的示例詳解,該示例包括生成數(shù)據(jù)集、為數(shù)據(jù)集選擇合適的機(jī)器學(xué)習(xí)模型、構(gòu)建、配置和訓(xùn)練它,最后解釋結(jié)果,即混淆矩陣,需要的朋友可以參考下
    2022-06-06

最新評(píng)論