redis

#redis是一个数据库他的数据全存在内存中,每秒支持30w次的读写  
#先安装redis 安装方法 pip install redis

import redis
# r=redis.Redis(host='127.0.0.1',port=6378,password='123456',db=2) #不写db默认db=0 #mysql默认端口3306,Redis默认端口6379

#1.连接他
#r.setex('nhy',5,'haha') #设置一个叫nhy的key,vlue是haha,保留5秒钟,五秒以后nhy消失


#以下为操作string类型的操作方法
# r.set('lsx','daliuliu')
# print(r.get('lsx').decode()) #获取的值是encode过的byetes类型,所以用decode转成字符串
# print(r.keys()) #获取到所以的key值
#print(r.keys("l*")) #筛选以l开头的key值
# for k in r.keys():
# print("{k}:{v}".format(k=k,v=r.get(k)))

#操作hash类型
r.hset('name','age',18) #hash类型时第一个值为名字(在这个名字下可以存放多个key,v值)在这个名字下面有一个key值是age,对应的v值是18(此方法更好管理)
r.hset('name','sex','男')
# print(r.hget('name','age')) #此方法一次只可获取一个值
# print(r.hgetall('name')) #此方法可以将name下所有的key和v都获取到 (返回的是字典类型)
r.delete('name') #删除
name=r.hgetall('name')
# for kname[k]) in name:
# print(k,

r1=redis.Redis(host='211.149.218.16',port=6378,password='123456',db=2)
r2=redis.Redis(host='211.149.218.17',port=6378,password='123456',db=3)
def r(r1,r2):
for k in r1.keys():
if r1.type(k)==b'hash': #判断是不是hash类型
hash_dic=r1.hgetall(k)
for k2,v in hash_dic.items():
r2.hset(k,k2,v)
else:
r2.set(k, r1.get(k))
# r(r1,r2)
posted @ 2019-08-13 10:45  刘淑贤  阅读(127)  评论(0编辑  收藏  举报