zoukankan      html  css  js  c++  java
  • Redis安装及五种数据类型

    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
  • 相关阅读:
    Linux IO接口 监控 (iostat)
    linux 防火墙 命令
    _CommandPtr 添加参数 0xC0000005: Access violation writing location 0xcccccccc 错误
    Visual Studio自动关闭
    Linux vsftpd 安装 配置
    linux 挂载外部存储设备 (mount)
    myeclipse 9.0 激活 for win7 redhat mac 亲测
    英文操作系统 Myeclipse Console 乱码问题
    Linux 基本操作命令
    linux 查看系统相关 命令
  • 原文地址:https://www.cnblogs.com/tangpg/p/8137249.html
Copyright © 2011-2022 走看看