python操作redis数据库

缓存

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

目录

    • 缓存
    • 1 连接数据库
    • 2 操作
      • 2.1 string类型
      • 2.1.1 新增 and 修改
      • 2.1.2 删
      • 2.1.3 查
    • 2.2 哈希(hash)类型
      • 2.2.1 新增 and 修改
      • 2.2.2 获取指定 value 值
      • 2.2.3 获取所有 小key
      • 2.2.4 删除 大key
      • 2.2.5 删除 小key

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)

输出:
在这里插入图片描述

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

你可能感兴趣的:(数据库,python,redis,python,数据库)