前言
本篇文章主要講述了Mac下Redis的安裝和使用的經驗,並將python如何操做Redis作了簡單介紹。python
brew info redis
這個命令會展現此係統下的redis信息,若是沒有安裝,會展現not install
git
brew install redis
可能須要等一會,系統下載完redis的包,會自動進行安裝github
brew services start redis
這個命令會在後臺啓動redis服務,而且每一次登陸系統,都會自動重啓redis
redis-server /usr/local/etc/redis.conf
這個命令會讀取redis的配置文件,而且在redis運行的過程當中也會看到實時的日誌打印。啓動成功,以下所示:數據庫
11862:C 20 Dec 2018 18:52:29.755 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 11862:C 20 Dec 2018 18:52:29.755 # Redis version=5.0.2, bits=64, commit=00000000, modified=0, pid=11862, just started 11862:C 20 Dec 2018 18:52:29.755 # Configuration loaded 11862:M 20 Dec 2018 18:52:29.756 * Increased maximum number of open files to 10032 (it was originally set to 4864). _._ _.-``__ ''-._ _.-`` `. `_. ''-._ Redis 5.0.2 (00000000/0) 64 bit .-`` .-```. ```\/ _.,_ ''-._ ( ' , .-` | `, ) Running in standalone mode |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379 | `-._ `._ / _.-' | PID: 11862 `-._ `-._ `-./ _.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | http://redis.io `-._ `-._`-.__.-'_.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | `-._ `-._`-.__.-'_.-' _.-' `-._ `-.__.-' _.-' `-._ _.-' `-.__.-' 11862:M 20 Dec 2018 18:52:29.757 # Server initialized
# 不須要身份認證時 redis-cli -p 6379 -h 127.0.0.1 # 須要身份認證時,輸入以下命令 redis-cli -p 6379 -h 127.0.0.1 -a yourpassword # or redis-cli -p 6379 -h 127.0.0.1 # 登陸進去以後再進行身份認證 127.0.0.1:6379> auth 0903
# 解壓 tar zxvf redis-4.0.9.tar.gz # 移動 mv redis-4.0.9 /usr/local/ # 切換到目錄 cd /usr/local/redis-4.0.9/ # 編譯測試 sudo make test # 編譯安裝 sudo make install
redis-server
和 redis-cli
位於 redis-4.0.9/src
目錄下 :
redis-server
,就能直接啓動成功;若是想要加上配置文件啓動能夠:redis-server /etc/redis.conf
說明:本文章採用的開源庫redis來操做Redis數據庫,開源項目參考:https://github.com/andymccurdy/redis-py測試
>>> import redis >>> r = redis.Redis(host='localhost', port=6379, db=0) >>> r.set('foo', 'bar') True >>> r.get('foo') 'bar'
from redis import Redis xtredis = Redis(host='127.0.0.1', port=6379, password='foobared') for i in range(5): xtredis.publish('email', 'message: Message{}'.format(i))
def subscribe_test(): """ 訂閱操做 :return: """ ps = xtredis.pubsub() # 訂閱channel ps.subscribe('email') while True: for item in ps.listen(): print(item)
洛水之風的公衆號:spa