本文目錄一覽:
python怎麼測試與redis的連接
Redis服務端:192.168.100.132;port=6379
Redis客戶端:192.168.100.132
客戶端操作:
安裝python支持redis;
tar zxvf redis-2.9.1.tar.gz
cd redis-2.9.1
python setup.py install
服務端啟動redis
/root/redis-2.2.12/src/redis-server
客戶端測試:
[root@master ~]# python
import redis
r = redis.Redis(host=’192.168.100.132′,port=6379,db=0) //#如果設置了密碼,就加上password=密碼
r.set(‘name’,’lansgg’)
True
r.get(‘name’)
‘lansgg’
r.exists(‘name’) //#看是否存在這個鍵值
True
r.delete(‘name’)
1
r.dbsize() //#庫里有多少key,多少條數據
0L
r.set(‘name’,’lansgg’)
True
r.flushdb() // #刪除當前數據庫的所有數據
True
r.get(‘name’)
r.set(‘name’,’lansgg’)
True
r.set(‘wm’,’leo’)
True
r.set(‘tt’,’coffee’)
True
r.keys() // # 列出所有鍵值。
[‘tt’, ‘wm’, ‘name’]
r.save() // #強行把數據庫保存到硬盤。保存時阻塞
True
r.dbsize()
3L
dir(r)
[‘RESPONSE_CALLBACKS’, ‘__class__’, ‘__contains__’, ‘__delattr__’, ‘__delitem__’, ‘__dict__’, ‘__doc__’, ‘__format__’, ‘__getattribute__’, ‘__getitem__’, ‘__hash__’, ‘__init__’, ‘__module__’, ‘__new__’, ‘__reduce__’, ‘__reduce_ex__’, ‘__repr__’, ‘__setattr__’, ‘__setitem__’, ‘__sizeof__’, ‘__str__’, ‘__subclasshook__’, ‘__weakref__’, ‘_zaggregate’, ‘append’, ‘bgrewriteaof’, ‘bgsave’, ‘bitcount’, ‘bitop’, ‘blpop’, ‘brpop’, ‘brpoplpush’, ‘client_getname’, ‘client_kill’, ‘client_list’, ‘client_setname’, ‘config_get’, ‘config_resetstat’, ‘config_set’, ‘connection_pool’, ‘dbsize’, ‘debug_object’, ‘decr’, ‘delete’, ‘dump’, ‘echo’, ‘eval’, ‘evalsha’, ‘execute_command’, ‘exists’, ‘expire’, ‘expireat’, ‘flushall’, ‘flushdb’, ‘from_url’, ‘get’, ‘getbit’, ‘getrange’, ‘getset’, ‘hdel’, ‘hexists’, ‘hget’, ‘hgetall’, ‘hincrby’, ‘hincrbyfloat’, ‘hkeys’, ‘hlen’, ‘hmget’, ‘hmset’, ‘hscan’, ‘hset’, ‘hsetnx’, ‘hvals’, ‘incr’, ‘incrby’, ‘incrbyfloat’, ‘info’, ‘keys’, ‘lastsave’, ‘lindex’, ‘linsert’, ‘llen’, ‘lock’, ‘lpop’, ‘lpush’, ‘lpushx’, ‘lrange’, ‘lrem’, ‘lset’, ‘ltrim’, ‘mget’, ‘move’, ‘mset’, ‘msetnx’, ‘object’, ‘parse_response’, ‘persist’, ‘pexpire’, ‘pexpireat’, ‘ping’, ‘pipeline’, ‘psetex’, ‘pttl’, ‘publish’, ‘pubsub’, ‘randomkey’, ‘register_script’, ‘rename’, ‘renamenx’, ‘response_callbacks’, ‘restore’, ‘rpop’, ‘rpoplpush’, ‘rpush’, ‘rpushx’, ‘sadd’, ‘save’, ‘scan’, ‘scard’, ‘script_exists’, ‘script_flush’, ‘script_kill’, ‘script_load’, ‘sdiff’, ‘sdiffstore’, ‘sentinel’, ‘sentinel_get_master_addr_by_name’, ‘sentinel_masters’, ‘sentinel_sentinels’, ‘sentinel_slaves’, ‘set’, ‘set_response_callback’, ‘setbit’, ‘setex’, ‘setnx’, ‘setrange’, ‘shutdown’, ‘sinter’, ‘sinterstore’, ‘sismember’, ‘slaveof’, ‘smembers’, ‘smove’, ‘sort’, ‘spop’, ‘srandmember’, ‘srem’, ‘sscan’, ‘strlen’, ‘substr’, ‘sunion’, ‘sunionstore’, ‘time’, ‘transaction’, ‘ttl’, ‘type’, ‘unwatch’, ‘watch’, ‘zadd’, ‘zcard’, ‘zcount’, ‘zincrby’, ‘zinterstore’, ‘zrange’, ‘zrangebyscore’, ‘zrank’, ‘zrem’, ‘zremrangebyrank’, ‘zremrangebyscore’, ‘zrevrange’, ‘zrevrangebyscore’, ‘zrevrank’, ‘zscan’, ‘zscore’, ‘zunionstore’]
這只是一個簡單的測試,為了測試redis是否正常工作,我們安裝是否正確;
python 的 redis 庫,連接池怎麼用
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import redis
host = r’localhost’
port = 6379
POOL = redis.ConnectionPool(host=host, port=port, db=0)
my_server = redis.Redis(connection_pool=POOL)
def read_in_data(file_name):
data = []
with open(file_name, ‘r’) as f:
for line in f:
line = line.strip()
data.append(line.split(‘,’))
return data
def write_data_to_redis(data):
my_server.set(‘counter’, 0)
for items in data:
my_server.incr(‘counter’)
for item in items:
my_server.rpush(items[0], item)
def get_data_from_redis():
keys = my_server.keys()
for key in keys:
data_type = my_server.type(key)
if data_type == ‘list’:
val = my_server.lrange(key, 0, -1)
elif data_type == ‘string’:
val = my_server.get(key)
print “%s:%s” % (key, val)
if __name__ == ‘__main__’:
fileName = r’/Users/qinchuanqing/Code/workspace/IMP/installation/storage/NeSchedule.txt’
data = read_in_data(fileName)
write_data_to_redis(data)
print ‘all data items number is %s’ % my_server.get(‘counter’)
print my_server.keys()
print get_data_from_redis()
如何在Linux上為Python語言安裝Redis客戶端
(1)下載好之後,使用命令進行解壓:
(2)使用命令python ez_setup.py進行運行:
(3)使用命令python -m easy_install redis hiredis 來安裝redis包以及hireredis包:
由上圖可看出在安裝過程中出問題了,最終找到原因才是因為Linux上的Python版本(2.7)太低!!!所以我們接下來升級Python的版本:
a)首先還是在Python的官網上下載安裝包,下面給出下載的地址:
我選擇的版本是Python-3.1.2版本,其他的版本也是可以,但至少要比2.7版本要高:
b)解壓安裝包:
d)在/usr/local下創建目錄python3,用於安裝python的路徑,以免覆蓋老的版本:
e)開始編譯安裝:
./configure –prefix = /usr/local/python3
make make install
f)編譯安裝完成之後,此時沒有覆蓋原來的版本,再將原來/usr/bin/python鏈接改為別的名字:
mv /usr/bin/python /usr/bin/python_old
g)再建立新版本python的鏈接:
ln -s
/usr/local/python3/bin/python3
/usr/bin/python
至此python的安裝已經完成!!!!
PS:如果不建立新安裝路徑python3,而是直接默認安裝,則安裝後的新python應該會覆蓋linux下自帶的老版本,也有可能不覆蓋,具體看安裝過程了,這個大家可以自己試驗下,當然如果還想保留原來的版本,那麼這種方法最好不過了。
以上則就是python的新版本!!!!
然後再使用剛開始的命令:
(4)
(5)
至此我們已經完成了在Linux上為Python語言安裝Redis客戶端!!!!接下來我們進行驗證:
(6)首先開啟redis服務:
(7)查看服務器開啟端口:
(8)開啟redis客戶端連接服務器:
(9)下面我們使用python來測試redis,首先啟動python:
(10)導入redis客戶端:
(11)創建redis連接,並設置一個值,然後通過獲取返回值來判斷設置操作是否執行成功
原創文章,作者:SINP,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/133517.html