redis的连接和基本操作
1.开启服务器端
- 服务器端的命令为: redis-server
redis-server
- 开启服务器端前先查看redis进程,并杀死占用进程
ps aux | grep redis 查看redis服务器进程
sudo kill -9 pid 杀死redis服务器
sudo redis-server /etc/redis/redis.conf 指定加载的配置文件
2.开启客服端
- 客户端的命令为: redis-cli
redis-cli
- 运⾏测试命令: ping
3.切换数据库
- 数据库没有名称,默认有16个,通过0-15来标识,连接redis默认选择第一个数据库
select 10
4.redis的基本操作
在Ubuntu下面操作:
redis的操作是以key - value的形式存储的
key为字符串
Value: 字符串,hash表,list集合,set集合,zset集合 五种类型
redis-server 启动redis服务器
redis-cli 启动redis客户端
select [0-15]选择数据库
字符串类型:
1. 基本键值对: set key value
2. 键值对,有效期: setex key second value
3. 设置多个键值对: mset key1 value1 key2 value2 ..
4. 追加值: append key value
获取值:
1.获取基本值: get key
2.获取多个值: mget key1 key2 ..
查看键:
1.查看所有的键: keys *
2.查看以a开头的键: keys a*
3.看键是否存在: exists key
4.查看键的类型: type key1
删除键值对:
1.删除键: del key1 key2 ..
2.设置键有效期,删除键:expire key seconds
3.查看键的有效期: ttl key
hash类型
增加数据
1.增加域的key和值: hset key field value
2.设置域的多个属性: hmset key filed1 value1 field2 value2…
获取数据:
1.获取域的属性(字段): hget key field
2.获取域的多个属性: hmget key filed1 field2..
3.获取域的所有属性(字段): hkeys key
删除数据:
1.删除多个属性值(字段): hdel key field1 field2…
list类型:
插入数据:
1.左侧插入数据: lpush key value1 value2 …
2.右侧插入数据: rpush key value1 value2 …
3.指定key,旧元素位置前插入元素:
格式:linsert key before oldvalue newvalue
4.指定key,旧元素位置后插入元素:
格式:linsert key after oldvalue newvalue
获取数据:
1.获取从编号start位置到编号stop位置的元素:
格式:lrange key start stop
(注意点,最后一个元素可以使用-1表示)
2.设置指定索引位置的元素值: lset key index value
删除数据:
1.将key域列表中,前count次,值为value的元素删除:
格式: lrem key count value
count:需要删除的个数
value: 需要删除的值
count>0:从头开始数, count<0从尾到头,count=0查找所有元素
set类型
特点:无序(顺序)集合, 大小关系有序,不能存储重复元素
1 6 3 9 2
添加元素
1.向key域(集合)中添加多个数据, sadd key member1 member2...
获取元素:
2.获取key域集合的所有元素: smembers key
删除元素:
1.删除指定key元素的值: srem key value
Zset类型
特点: 有序集合, score为权重值
序:自然顺序
增加数据
1.向key域集合中添加多个score1,member1数据
格式: zadd key score1 member1 score2 memever2...
获取数据:
1.返回指定范围内的member元素:
格式:zrange key start stop
start:为开始索引,包含
stop:为结尾索引,包含, -1表示最后一个元素
2.获取min和max权值之间(包含)的成员值:
格式:zrangebyscore key min max
3.获取key域集合中member的score的权重值:
格式:zscore key member
删除元素:
1.删除域集合中指定的元素值:
格式:zrem key member1 member2...
2.删除集合中权重在指定范围内(min,max)的元素:
格式:zremrangebyscore key min max
5.与python交互
5.1 安装包
第一种:进⼊虚拟环境py_django,联⽹安装包redis
pip install redis
5.2 调⽤模块
from redis import *
- 这个模块中提供了StrictRedis对象(Strict严格),⽤于连接redis服务器,并按照不同类型提供 了不同⽅法,进⾏交互操作
5.3连接python交互
- 在桌面上创建redis目录
- 使用pycharm打开 redis目录
- 创建redis_string.py文件
from redis import *
if __name__=="__main__":
try:
#创建StrictRedis对象,与redis服务器建⽴连接
sr=StrictRedis()
except Exception as e:
print(e)
string-增加
- ⽅法set,添加键、值,如果添加成功则返回True,如果添加失败则返回False
- 编写代码如下
from redis import *
if __name__=="__main__":
try:
#创建StrictRedis对象,与redis服务器建⽴连接
sr=StrictRedis()
#添加键name,值为itheima
result=sr.set('name','itheima')
#输出响应结果,如果添加成功则返回True,否则返回False
print(result)
except Exception as e:
print(e)