有勇气的牛排博客
☰

python操作redis数据库

有勇气的牛排 995 Python 2023-05-18 20:54:16

知止自律打卡-微信小程序APP
一款微信自律打卡小程序,支持自定义打卡项目、习惯记录、项目日记、专注计时与数据统计。自律打卡、学习打卡、读书打卡、健身打卡、运动打卡、减肥打卡、戒色打卡、养生打卡、戒烟、戒酒、戒熬夜等多种场景。万能打卡模板自由创建。可自定义每日打卡目标,记录习惯连续天数,可视化追踪成长进度。
了解产品详情 →
微信搜索「知止自律打卡」
知止自律打卡微信小程序

缓存

  1. 什么是缓存
    高速设备代替低速设备承载更多处理能力和IO操作。
  2. Redis是一个内存性数据库,用于缓存硬盘数据,进而提升性能。
  3. 为什么需要缓存:
    硬盘太慢了,所以让内存多做些事情;内存比硬盘要快至少100倍,通过缓存可以更好支撑高并发。

<font face=" 楷体,华文行楷,隶书,黑体" color=red size=4>哈喽,大家好,我是有勇气的牛排(全网同名)🐮🐮🐮</font>

<font face=" 楷体,华文行楷,隶书,黑体" color=blue size=4>有问题的小伙伴欢迎在文末评论,点赞、收藏是对我最大的支持!!!。</font>

@toc

1 连接数据库

pip install redis
import redis

def redis_connect():
	# redis-py使用connection pool来管理对一个redis server的所有连接,避免每次建立、释放连接的开销。默认,每个Redis实例都会维护一个自己的连接池。
    pool = redis.ConnectionPool(host='127.0.0.1', port=6379, decode_responses=True, db=0)
    red = redis.Redis(connection_pool=pool)
    return red

# 连接到Redis服务器
red = redis_connect()
red.hset('bigkey', 'smallkey', 'value')

2 操作

2.1 string类型

set(name, value, ex=None, px=None, nx=False, xx=False)
# ex,过期时间(秒)
# px,过期时间(毫秒)
# nx,如果设置为True,则只有name不存在时,当前set操作才执行
# xx,如果设置为True,则只有name存在时,当前set操作才执行

ex
5分钟:60 * 5 = 300
一天:3600 * 24 = 86400
一周:3600 * 24 * 7 = 604800
一个月:3600 * 24 * 30 = 2592000

2.1.1 新增 and 修改

	r.set('a','666')

ex: 失效时间

	r.set('a','666',ex=3000)

2.1.2 删

  1. 删除数据库所有key

    r.flushdb()
    
  2. 删除指定key

    r.delete('a')
    

2.1.3 查

  1. 获取指定key值

    r.get('a')
    
  2. 获取所有以 a 开头的 key

    r.keys('a*')
    

2.2 哈希(hash)类型

2.2.1 新增 and 修改

参数一:大key
参数儿:小key

r.hset('bigKey', 'smallKey', '{"age":18,"addr":"北京"}')

2.2.2 获取指定 value 值

.hget('大key','小key')

res = r.hget('bigKey', 'smallKey')
print(res)

输出:

image.png

2.2.3 获取所有 小key

.hgetall('大key')

res = r.hgetall('bigKey')
print(res)

2.2.4 删除 大key

r.delete('bigKey')

2.2.5 删除 小key

r.hdel('bigKey','smallKey')

参考文章:
https://www.cnblogs.com/yiruliu/p/9798219.html
https://segmentfault.com/a/1190000014416025

标签:

×
×