redis数据库和python联动


redis数据库和python

redis

nosql数据库之一

内存运行,效率极高

key-value

特点:

c/s通信模式

单进程单线程

支持很多数据类型

高并发读写

支持lua脚本

数据持久化

每秒11w次读,8w1k次写

原子,要么成功要么失败

windows下

首先先下载一个phpstudy

image-20220409155816815

这俩都下,然后开启redis服务

然后点开client的管理

image-20220409155907719

image-20220409155943959

不过一般情况下使用命令行来执行redis数据库连接

image-20220409161318742

连接数据库
redis-cli -h 127.0.0.1
连接外部数据库
redis-cli -h [远程数据库的地址] -p 6379
退出
quit

select [数字] //选择哪个数据库

如果让其他人连接你的数据库

需要在redis.windows.conf里添加一个

bind 127.0.0.1

数据库操作

键值对,键不能重复
基本设置值
flushall //清空所有数据
set name test1 //添加一个键值对
get name1 //获得数据

set name2 test2 EX5
setex name2 test2   //设置五秒后失效的键值对

ttl name2 //获取键值对生命周期
mset key1 value1 key2 value2 //同时设置多个键值对
mget key1 key2 同时获得多个键值对

append name1 yao 在name1的值后面增加yao(拼接效果)

键命令

keys [正则表达式]
keys * //取出所有的键
keys ke* //取出所有以ke开头的键
keys name[0-3] //取出name0-3的键
exists name2 //判断name2键是否存在
del name3 删除某一个键
expire name2 5 //设置键几秒过期

hash类型

设置hash类型
hset xiaoming height 180
hset xiaoming weight 60kg
hset xiaoming age 18

获得hash值
hget xiaoming height
获得hash下所有的键值对
hgetall xiaoming

同时设置多个值的hash
hmset xiaohong id 2 weight 120kg height 190
获得hash下所有的key
hkeys xiaohong
查看里面有多少个值
hlen xiaohong
查看里面有多少个value
hvals xiaohong
提取hash特定的key的值
hmget xiaohong id weight
删除hash下特定的键值对
hdel xiaohong id height
删除xiaoming
del xiaohong

list类型

如果lpush是从下往上累加东西,其他运算就是从上往下进行操作

从左往右依次插入数据,此时第0个元素是a1
lpush list1 a1 a2 a3 a4 a5 a6 a7 a8 a9
从右往左依次插入数据,此时第0个元素是a9
rpush list2 a1 a2 a3 a4 a5 a6 a7 a8 a9
从上往下取四个
lrange list1 0 3
取出list1中所有内容
lrange list1 0 -1
取出从上往下的第3个并且值修改为b3
lset list1 2 b3
删除所有a3
lrem [列表] [计数] [值]
如果计数>0,从头到尾搜索值并且删除对应的个数
如果计数<0,从尾倒头搜索值并且删除对应的个数
如果计数=0,就删除所有的对应的值
lrem list2 0 a3
查看列表中第几个元素
index list2 [数字] 
查看列表中有多少个值
llen list2

set类型

无序集合,元素唯一,不重复,没有修改操作
创建一个set值
sadd s1 member1 member2 member3
获取s1里所有值
smembers s1
获取s1里有多少个元素
scard s1
删除set中的值
srem s1 member2
取出交集
sinter s1 s2
取并集
sunion s1 s2
取差集
sdiff s1 s2

zset类型

有序集合,元素唯一,不重复,没有修改操作
每个元素关联一个score,也就是权重,从小到大排序

添加元素和对应的权重
zadd zs1 4 xiaoming 5 xiaohong 2 xiaogang

文章作者: Broken-year
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Broken-year !
  目录