• Redis 实践3-操作


    string常用操作

    set key1  aminglinux
    get key1  
    set key1  aming //一个key对应一个value,多次赋值,会覆盖前面的value
    setnx key2 aaa   //返回1
    get key2
    setnx key2 bbb  //返回0
     
    说明:setnx 如果key存在,则返回0,不存在会直接创建这个key
    setex key3  10  1  //这个是用来给key设定过期时间的
    mset  key1 1  key2 2 key3  3   //同时设置多个key
    mget key1 key2 key3
     
     
    Hash数据常用操作
     
     
    hset user1  name aming  //建立hash
     
     
    hset user1 age 30
     
    hset user1 job  it
     
    hget all user1
     
    hmset user2  name aming age 30  job it    //批量建立键值对
     
    hmget user2
     
    hmget user2 name age  job
     
    hdel user2 job   //删除指定filed
     
    hkeys user2   //打印所有的key
     
    hvals user2  //打印所有的values
     
    hlen user2  //查看hash有几个filed
     
     
    list数据常用操作
     
     
    lpush lista a  //从左侧压入一个元素
     
    lpush lista b
     
    lrange lista 0 -1 //0 为头,-1为尾
     
    lpop lista  //从左侧取出
     
     
    rpush lista 1   //从右侧压入一个元素
     
    rpush lista 2
     
    lrange lista 0 -1
     
    rpop lista   //从右侧取第一个元素
     
    linsert lista before  2 3  //在2的前面插入一个元素为3
     
    lset lista 4 bbb //把第5个元素修改为bbb
     
    lindex lista 0  //查看第1个元素
     
    lindex lista 3  //查看第4个元素
     
    llen lista //查看链表中有几个元素
     
     
     
    set数据常用操作
     
     
    sadd seta aaa //向集合seta中放入元素
     
    smembers seta   //查看集合中的所有元素
     
    srem seta    aaa //删除元素
     
    spop seta    //随机取出一个元素,删除
     
    sdiff seta  setb   //求差集,以seta为标准
     
    sdiffstore setcseta setb  //求差集并且存储,存储到了setc里
     
    sinter seta setb    //求交集
     
    sinterstore setdseta setb //将交集存储setd
     
    sunionseta setb  //求并集
     
    sunionstore seteseta setb   //求并集并存储到sete
     
    sismemberseta aaa  //判断一个元素是否属于一个集合
     
    srandmember seta  //随机取出一个元素,但不删除
     
     
    zset数据常用操作
     
     
    zadd zseta 11 123//创建有序集合
     
    zrange zseta 0 -1   //显示所有元素,按顺序显示
     
    zrange zseta 0 -1 withscores   //可以带上分值
     
    zrem zseta 222  //删除指定元素
     
    zrank zseta  222  //返回元素的索引值,索引值从0开始,按score正向排序
     
    zrevrank zseta 222   //同上,不同的是,按score反序排序
     
    zrevrange  zseta  0 -1  反序显示所有元素,并带分值
     
    zcard zseta  //返回集合中所有元素的个数
     
    zcount  zseta 1 10  //  返回分值范围1-10的元素个数
     
    zrangebyscore  zseta 1 10 // 返回分值范围1-10的元素
     
    zremrangebyrank zseta  0 2  //删除索引范围0-2的元素,按score正向排序
     
    zremrangebyscore zseta  1 10 //删除分值范围1-10的元素
     
     
    键值相关操作
     
     
    keys *    //取出所有key
     
    keys my* //模糊匹配
     
    exists name  //有name键 返回1 ,否则返回0;
     
    del  key1 // 删除一个key    //成功返回1 ,否则返回0;
     
    EXPIRE key1 100  //设置key1 100s后过期
     
    ttl key // 查看键 还有多长时间过期,单位是s,当key 不存在时,返回-2 。 当 key 存在但没有设置剩余生存时间时,返回-1 。 否则,返回key 的剩余生存时间。
     
    select  0  //代表选择当前数据库,默认进入0 数据库
     
    move age 1  // 把age 移动到1 数据库
     
    persist key1   //取消key1的过期时间
     
    randomkey//随机返回一个key
     
    rename oldname newname//重命名key
     
    type key1 //返回键的类型
     
     
     
    服务相关操作
     
     
    dbsize  //返回当前数据库中key的数目
     
    info  //返回redis数据库状态信息
     
    flushdb //清空当前数据库中所有的键
     
    flushall    //清空所有数据库中的所有的key
     
     
     
    php中应用redis
     
    Redis扩展模块安装
     
     
    mv develop phpredis.zip
    unzip phpredis.zip
    cd phpredis-develop
    /usr/local/php/bin/phpize
    ./configure --with-php-config=/usr/local/php/bin/php-config   
    make && make install
     
    vim /usr/local/php/php.ini  // 增加一行extension = redis.so
    /usr/local/php/bin/php -m |grep redis 检查是否成功
     
    Redis实现session共享
     
    php.ini中加入
      session.save_handler = "redis"
      session.save_path = "tcp://127.0.0.1:6379"
     
    或者apache虚拟主机加入
      php_value session.save_handler " redis"
    php_value session.save_path " tcp://127.0.0.1:6379"
     
    或者php-fpm.conf对应的pool中加入
      php_value[session.save_handler] = redis
      php_value[session.save_path] = " tcp://127.0.0.1:6379 "
     
     
    Redis存储session测试
    mv .mem_se.txt  /usr/local/apache2/htdocs/session.php
     
    curl localhost/session.php
    输出类似于 1443710814<br><br>1443710814<br><br>9jm6nom9ogojedj3pth0iscv22
     
     
    连接redis:
    /usr/local/redis/bin/redis-cli
    127.0.0.1:6379> keys * //可以把所有的key都列出来
    "PHPREDIS_SESSION:9jm6nom9ogojedj3pth0iscv22"
    127.0.0.1:6379> get PHPREDIS_SESSION:9jm6nom9ogojedj3pth0iscv22
    "TEST|i:1443710814;TEST3|i:1443710814;"
     
  • 相关阅读:
    peerdroid:JXTA peers running on Android platform.
    关于2.7版中对等组任务管理器
    关于java获取操作系统信息
    Failed to login to this group: xxx. Error=0
    jxsev2.5源代码
    PropertyBeanUtils.copyProperties(dest, orig)
    发现两个有关Netbeans RCP开发的项目
    关于AdvertisementFactory废弃的几个方法
    在vs2008中,根据系统引用64和32位的动态库
    vc练习总结1
  • 原文地址:https://www.cnblogs.com/weifeng1463/p/7417836.html
Copyright © 2020-2023  润新知