redis是非关系型数据库,也叫内存数据库。数据是键值对的形式,通过key查找value

安装Radis:6379

sudo apt-get update

sudo apt-get install redis-server

redis-cli  # 启动redis

python连接redis 需要修改redis端口号

  1. sudo vim  /etc/redis/redis.conf  # 找到bind 改端口为 0.0.0.0
  2. netstat -ntl  # 查看端口号,这是并没有变为 0.0.0.0
  3. sudo service redis-server restart  # 需要重启服务
  4. netstat -ntl  #现在端口就变成0.0.0.0了

五种数据类型:

  1. string  字符串
  2. list  列表
  3. hash 哈希
  4. set 集合
  5. zset 有序集合
1.# String的操作

# 设置字符串 set key value
set name Which # 查看字符串 get key
get name # 查看所有的键
keys * # 判断key 是否存在 exists key
exists name # 查看建的类型 type keyxi
type name # 给name追加值
append name 18 # 删除 del key
del name # 同时设置多个str mset key value key1 value1
mset name Which age 18 address "潭州学院"
# 同时查看多个key mget key key1...
mget name age address # 设置过期时间
expire name 15 # 查看过期时间
ttl name # 运算
# +1 incr key
incr age
# -1 decr key
decr age
# + 整数 incrby key num
incrby age 2
# - 整数 decrby key num
decrby age 3

2.list

2.# list的操作
# 设置list
# 左添加
lpush my_list 1 2 3 4
# 右添加
rpush my_list1 1 1 2 3 4 1 # 查看 lrange key start end
lrange my_list 0 -1
lrange my_list1 0 -1 # 获得list元素个数 llen key
llen my_list # 查看该位置上的元素是lindex 索引
lindex my_list 0 # 删除 # 左删除一个 lpop key
lpop my_list1
# 右删除一个 rpop key
rpop my_list1
# 指定删除 lrem key count value
lrem my_list1 2 1 #左往右删除两次 1
# lrem my_list1 0 1 # count=0 删除所以的 1
# lren my_list1 -2 1 # 从右往左删除两次 1

3.hash

3.# hash
# 设置 hset key field values
hset account name Which
# 获取 hget key field
hget account name
# 删除 hdel key field
hdel account name # 设置多个 hmset key field value [field value]
hmset user name Tom age 21 address school
# 获取多个 hmget key field [field]
hmget user name age address
# 获取全部 hgetall key
hgetall user
# 获取field 的个数 hlen key
hlen user

4.set

4. # set
# 设置 sadd key value value1...
sadd my_set 1 2 3 4 1 2 4
# 查看 smembers key
smembers my_set
# 删除
#指定删除 srem key member
srem my_set 4
#随机删除 spop key
spop my_set # 移动一个集合的member到另一个集合 smove oldkey newkey members
sadd new_set 1 2
smove my_set new_set 3 # 判断集合中存在某个值 sismember key value
sismember my_set 1 # 并集 sunion key1 key2
# 将key1 key3的并集合并到newkey
sunionstore newkey key1 key2 # 差集 sdiff key1 key2
# 把key1 key2 的差集合并到newkey
sdiffstore newkey key1 key2 # 获取集合的个数
scard key
#随机返回一个
srandmember key

5.zset

5.zset
# 设置 zadd key score member 索引+值
zadd z_set 111 D 3 S 1 G
# 获取
#正序 zrange key strat stop
zrange z_set 0 -1
#反序 zrevrange key start stop
zrevrange z_set 0 -1 # 删除 zrem key member
zrem z_set G zadd z_set1 2 b 5 d 3 c 1 a
# 索引
# 正序 获得该元素在有序集合中的索引值 zrank key member
zrank z_set1 a
# 反序 zrevrank key member
zrevrank z_set1 a # 查看有序集合元素数 zcard key
zcard z_set1
# 返回在建表给的索引区间min-max之间的值的个数 zcount key min max
zcount z_set1 1 2 # 查看建立zset给的索引score值 zscore member
zscore z_set1 a

Redis安装及五种数据类型的更多相关文章

  1. Redis支持的五种数据类型

    redis支持的五种数据类型: 1.string(字符串) 2.hash(哈希) Redis hash 是一个键值(key=>value)对集合. Redis hash是一个string类型的f ...

  2. 【Redis】一、Redis简介及五种数据类型

    (一)Redis简介   Redis(Remote Dictionary Server)是一个使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value的开源 ...

  3. 《闲扯Redis一》五种数据类型之String型

    一.前言 Redis 提供了5种数据类型:String(字符串).Hash(哈希).List(列表).Set(集合).Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要. ...

  4. Redis学习笔记--五种数据类型的使用场景

    String 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...

  5. <Redis> 入门二 五种数据类型的操作、通用key的操作、发布订阅

    文档参考:http://www.redis.net.cn/ string - > key value 简单的keyvalue,常规计数:例如微博数,粉丝数 set     -> key v ...

  6. redis五种数据类型的使用(zz)

    redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...

  7. redis五种数据类型的使用

    redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...

  8. redis五种数据类型的使用场景

    string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...

  9. Redis五种数据类型-设置key的过期时间

    1.redis命令客户端 [root@localhost bin]# ./redis-cli 127.0.0.1:6379> #是否运行着 127.0.0.1:6379> ping PON ...

随机推荐

  1. [LeetCode&Python] Problem 412. Fizz Buzz

    Write a program that outputs the string representation of numbers from 1 to n. But for multiples of ...

  2. 取消word中所有超链接

    我用的是M-O-W2007,最近做了一个文档,里面很多网上拷下来的图片,很多都有超链接,不想一个一个的取消,请高手帮忙教下有没有措施一次性都取消? 最佳答案: 三种方法,任意选用其中之一: 第一种方法 ...

  3. jsp之response方法

    response简介 response对象:对客户端的请求作出回应,将Web服务器处理后的结果发回客户端. response对象:属于javax.servlet.HttpServletResponse ...

  4. LG3898 [湖南集训]大新闻

    题意 题目描述 **记者弄了个大新闻,这个新闻是一个在 [0,n) 内等概率随机选择的整数,记其为 x.为了尽可能消除这个大新闻对公众造成的不良印象,我们需要在 [0,n)内找到某一个整数 y,使得 ...

  5. python 判断字符串中字符类型的常用方法

    s为字符串 s.isalnum() 所有字符都是数字或者字母 s.isalpha() 所有字符都是字母 s.isdigit() 所有字符都是数字 s.islower() 所有字符都是小写 s.isup ...

  6. ballerina 学习二十六 项目docker 部署&& 运行(二)

    ballerina 从发布,到现在官方文档的更新也是很给力的,同时也有好多改进,越来越好用了 可以参考官方文档 https://ballerina.io/learn/by-guide/restful- ...

  7. graphql elasticsearch 集成试用

    graphql 是很方便的api 查询语言,elasticsearch 可以方便的进行全文检索的应用开发 有一个方便的npm 包graphql-compose-elasticsearch 可以进行es ...

  8. BZOJ 1845三角形面积并

    题目链接:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1845 给定100个三角形,求三角形面积并. 戴神模板太可怕.直接调用函数秒掉.思路 ...

  9. 将svnserve部署为后台服务

    由于svnserve运行模式没有部署为后台服务,很容易被人误关掉.于是在网上查了一下,发现也已经有人总结了.Copy过来,以作备忘. 以前的svnserve要想成为windows服务,必须依赖于svn ...

  10. 【Bitmap Index】B-Tree索引与Bitmap位图索引的锁代价比较研究

    通过以下实验,来验证Bitmap位图索引较之普通的B-Tree索引锁的“高昂代价”.位图索引会带来“位图段级锁”,实际使用过程一定要充分了解不同索引带来的锁代价情况. 1.为比较区别,创建两种索引类型 ...