博客列表 >redis笔记

redis笔记

杨洪全的博客
杨洪全的博客原创
2018年03月20日 23:11:28766浏览

redis:Remote Directory Server  远程服务器字典


@安装 //欠缺

@@Linux下安装Reids

http://redis.io/download


wget http://download.redis.io/releases/redis-3.0.1.tar.gz 下载

tar -xzvf redis-3.0.1.tar.gz 解压

cd redis-3.0.1 进入解压目录

make 编译 安装

make install


在bin下可执行的程序

redis-server:Redis服务器

redis-cli:命令行客户端

redis-benchmark:Redis的性能测试工具

redis-check-aof:AOF文件修复工具

redis-check-dump:RDB文件检测工具



@配置 //欠缺

redis.conf是Redis的配置文件

将配置文件中daemonize yes 以守护进程的方式来使用




@类型


    @@key所有命令

    1.返回所有符合给定模式的key

     keys pattern

     * : 任意个字符

     ? : 一个任意字符

     [] : []之间的一个字符


     keys *  

     keys yh?

     keys yh[a-z]


    2.检测指定的key是否存在

     exists key


    3.返回key的存储类型

     type key

     不存在的key返回none

     string hash set zset list


    4.删除指定的key

     del key


    5.随机从当前数据库返回一个key

     randomkey


    6.重命名一个key

     rename key1 key2

     如果名称没有发生变化会报错


    7.序列化key,返回序列化后的值

     dump key

    8.反序列化

      restore key 0(生存时间) \x00\x0


    9.

     select 0 (默认数据库) 切换数据库

     move key 1(dbid)



@@string类型 一个键最多512MB

1.设置value    set key value

     EX seconds : 以秒的形式设置key的过期时间 set yhq qhh EX 5 

     PX milliseconds : 以毫秒的形式设置key的过期时间 set yhq qhh PX 5000 / pexpire key1 1000

     在指定时间戳过期秒/毫秒 expireat/pexpireat key1 14343434/13424240000

     将带有过期时间的key设置为永久的key

     persist key


     同名的key会覆盖


2.获取value    get key

      如不存在 返回 nil(代表空) 

      如果key不是字符串 会报错


      以秒/毫秒为单位返回key剩余时间

      ttl/pttl key

      如果没有设置过期时间 -1

      key不存在 -2


    3.获取value指定长度一部分(截取)

      getrange yhq 0 3


    4.一次性设置多个键值

      mset key1 value1 key2 value2


    5.一次性获取多个键值

      mget key1 key2


    6.获取key的长度

      strlen yhq 


    7.字符串替换

      set yhq qhh123

      setrange yhq 3 546

      如果设置的超出偏移量 用零字节(\x00)补充


8.将key的值自增+1  

 incr age

 如果key不存在,则会先初始化为0 在进行incr

 如果key存储的不是数字 则会报错


9.将key的值增加指定的值  incrby  num


10.将key的值增加指定的浮点数

  incrbyfloat yhq 1.1


11.将key的值自减-1  decr age


12.将key的值减少指定的值  decrby  num


13.获取所有的key    

  keys * 


14.将值追加到字符串末尾

       append yhq qhh

 


mysql表

id    username   password

 1      123        123123

 2      456        456456


将上面mysql表里面的数据存储到redis,存储的key该如何设计

1.把mysql的表名获取redis里面的key的前缀(user前缀)

2.把mysql的表的主键名称放在前缀的后面,一般使用冒号分割(user:id)

3.对应记录的主键值做key的第三部分(user:id:1)

4.把mysql表里面的其他字段作为key的第四部分(user:id:1:username)

set user:id:1:username 123

set user:id:1:password 123123

获取表下主键所有字段

keys user:id:1*

获取表下主键字段的值

get user:id:1:username



@@hash类型

1.设置array的key的value   

hset array key value

     如果哈希表key中field不存在,相当于新建field,成功1

     如果哈希表key中field存在,相当于重新赋值,成功0


    2.返回哈希表中key的field值

     hget arr key

     如果不存在返回nil


    3.设置多个k-v

     hmset arr key1 value1 key2 value2


    4.获取多个k-v

     hmget arr key1 key2


    5.返回hash表arr中所有的k-v

     hetall key


    6.返回hash中arr的所有key

     hkeys arr


    7.返回hash中arr的所有value

     hvals arr


    8.检测还是中的arr的key是否存在

     hexists arr key


    9.返回hash表arr中key的数量

     hlen arr

    

    10.给hash中arr的key做增量操作

     hincrby arr key1 12


    11.给hash中arr的key做浮点增量操作

     hincrbyfloat arr key1 1.2


    12.删除hash中arr的指定域 可以删除一个也可以删除多个

     hdel arr key1 key2



上一条:3下一条:PHP学习第4课作业0320
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议