linux上部署redis實現與Python上的redis交互(有坑)


1.概念

  Redis 是一個開源(BSD許可)的,內存中的數據結構存儲系統,它可以用作數據庫、緩存和消息中間件

2.linux安裝redis

2.1yum源安裝redis(不推薦)

#前提得配置好阿里雲yum源,epel源
#查看是否有redis包
yum list redis
#安裝redis(一般在opt文件下)
yum install redis -y
#安裝好,啟動redis
systemctl start redis

redis-cli    #redis 客戶端工具
#進入交互式環境后,執行ping,返回pong表示安裝成功
127.0.0.1:6379> ping
PONG

2.2源碼安裝(編譯安裝)redis

  這里推薦使用編譯安裝,我們可以統一安裝路徑,一般linux軟件約定安裝目錄在/opt/下面

  編譯源碼安裝可以根據需求,安裝最新的版本

1.下載redis源碼
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
2.解壓縮
tar -zxf redis-4.0.10.tar.gz
3.切換redis源碼目錄
cd redis-4.0.104.編譯源文件
make 
5.編譯好后,src/目錄下有編譯好的redis指令
6.make install 安裝到指定目錄,默認在/usr/local/bin

2.3 redis文件配置(避免運行Python代碼下報錯,一定要進行配制)

vim redis.conf

按向下箭頭找見下面白色的ip改成0.0.0.0:

把protected-mode 改為no

找到daemonize,可以看到reids默認情況下不是后台駐留程序,(將daemonize屬性改為yes,表明需要在后台運行,這個根據你個人情況來搞,如果選擇后台駐留,建議設一個密碼)

# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
# daemonize no
# 修改成:
daemonize yes

2.4.啟動redis服務端 ----->坑在這里

 方式一,直接運行(不推薦)

redis-server

 方式二,進入redis文件,指定加載文件運行------>配制好我們的文件后建議使用這個運行,像我使用其他的去和Python鏈接就會報錯

2.5使用redis服務端(重啟一個服務)

#執行客戶端命令即可進入
redis-cli  
#測試是否連接上redis
127.0.0.1:6379 > ping
返回pong代表連接上了

2.5其他命令

查看進程

ps -ef|grep redis

殺死進程

ps -ef | grep redis | awk ‘{print $2}’ | xargs kill -9

指定進程號刪除

kill 2337

關閉服務端

redis-cli shutdown

2.6關閉防火牆(重要)  --->這里我嫌麻煩給永久關閉了

  在Python中運行時有時候會報相關錯誤,要把防火牆關掉

暫時關閉防火牆:(立即生效,開機重啟,會重新打開) 
service iptables stop 
永久關閉防火牆(關機重啟才會生效) 
chkconfig iptables off

2.7redis設置密碼

2.7.1方法一:(不推薦,因為找不到這一行在哪)

1.在配置未檢redis.conf中找導如下行:

#requirepass foobared    ------>(這里要說的是,在文件里面找了好久沒找見啊)

去掉前面的密碼,並自己設置密碼

requirepass mypassword
然后重啟,這里不多演示了,想學這一步查看前人筆記
2.7.2方法二:(簡單好用)

先啟動我們的redis

雙擊腳本,再打開一個客戶端

[root@learning ~]# redis-cli
127.0.0.1:6379> config set requirepass mima
OK
127.0.0.1:6379> auth mima
OK

查看密碼(登陸后才能查看)

關閉redis服務端(必須登錄之后才行)

注意,這里雖然這么能用,但是我測試好像是一次性的,你關閉后下次再次登錄密碼就失效了,但是一般在雲端不會來回開關的,所以也不影響大家的使用,如果想永久使用,在配制文件中進行設置就ok,可以參考鏈接博客。

3.python安裝與運行redis

導入包

pip3 install redis

測試

import redis
conn = redis.Redis(host='192.168.88.128',port=6379)

conn.hset('xx','k1','konan')
conn.hset('xx','k2','learning')

n1 = conn.hget('xx','k1').decode('utf-8')
n2 = conn.hget('xx','k2').decode('utf-8')
print(n1,n2)

效果:

4.總結

  如果在Python運行過程中或報錯,一般就是配置文件以及防火牆的問題,其他問題暫時本人沒有遇到

  #####

  還要注意,對於剛開始學的同學,安裝完一定要配置密碼,現在有許多挖礦軟件會自動掃描到雲端的redis,為了安全起見一定要設置好密碼

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM