redis从下载到卸载--base for python
程序员文章站
2022-03-05 10:37:05
...
redis从下载到卸载
下载
# 确保有epel源后
yum -y install redis
概念
缓存服务器
数据库分类
关系型和非关系型
关系型:支持sql语句的,表和表之间有某种关系的(可以受约束)(数据工作在硬盘上)
- mysql (开源)
- oracal (付费)
- postgresql (开源,适合在云上使用,开发模式(利用开发语言开发数据库的操作))
- DB2 (老花钱了 ,需要放在unix上运行)
非关系型数据库(nosql):每个数据和每个数据之间都是独立的。
缓存数据库(数据工作在内存中)
key-value 形式
readis
values 支持类型不同
- string(包含数字)
- 数组
- 集合
- 有序集合
- hash
memcache
values 仅支持 string(包含数字)
文档型数据库(数据在硬盘上)
mongodb
{“user”:“shark”,“age”:18} ———json文档
ElasticSearch
表——-索引(文档)
应用场景
-
(热数据)加速查询(将经常查询的数据放在redis上)
-
没有付款的订单,可以设置过期时间(以秒为单位)
基本操作
# 登录redis
redis-cli
# 添加数据
# 在 Redis 中设置键值对,默认情况下,不存在则创建,存在则修改
# 参数:
ex,过期时间(秒)
px,过期时间(毫秒)
nx,假如设置为True,则只有 key 不存在时,当前 set 操作才执行
xx,假如设置为True,则只有 key 存在时,当前 set 操作才执行
set key value [EX] [PX] [NX|XX]
例子:
set name song ex 15
# 获取数据
get key
例子:
get name
# 查看有效时间 -1 永不过期 -2 已过期
ttl key
# 设置过期时间(不可以对已过期的key设置)
EXPIRE key 时间
# 删除
del key
连接数据库时可以使用的参数
配置文件
requirepass foobared# 配置文件的路径:/etc/redis.conf
# 设置监听地址
bind 127.0.0.1
# 设置监听端口
port 6379
# 设置密码登录
requirepass 【foobared】-----这个为密码
在python中操作redis
1.安装redis
pip3 install redis
2.连接
import redis
rs = redis.StrictRedis(host='192.168.1.37', #数据库所在IP,如果是本地则省略不写
port=6379, # 端口
db=0, # 指定数据库
decode_responses=True, #redis返回值默认是二进制bytes类型,设置为True可直接返回字符串,默认使用utf-8
password=密码)
3.set,get,ttl
rs.set(key,value,ex=1,px=1,nx=true,xx=true)
rs.set("name", "shark",ex=50)
rs.ttl("name")
rs.get("name")
4.hash操作
Redis 中的 Hash 数据,很想 Python 中嵌套的字典 :
{"n1": {"k1": "v1", "k2", "v2"}}
#单个
rs.hset("n1","name","shark") {"n1":{"name":"shark"}}
rs.get("n1","name")
> shark
# 多个
user_info = {"name": "shark", "age": 18}
rs.hmset("shark", user_info) {"shark":{"name": "shark", "age": 18}}
rs.hget("shark", "age")
下一篇: Google 的 C++ 代码规范