小木木 发表于 2016-12-17 10:06:53

redis摘记

  redis-benchmark #redis的性能测试工具
  redis-check-aof #数据修复,当事务提交,写了一半的数据进去,需要修复,删除
  redis-check-dump #检查导出json
  redis-cli #redis命令行操作工具 redis-cli.ext -a pwd  -p port
  redis-server #redis服务器的启动程序
  set   k v
  setnx k v  //不存在 not exists
  setex k 10 v  //设置有效期
  mset  k1 v1 k2 v2 //多个键值设置
  msetnx k1 v1 k2 v2  //不存在设置
  getset k1 v_new //获取旧值,返回新值
  mget k1 k2 //获取多个值
  exists k1  //判断是否有值
  del k1 //删除元素
  incr k1 //++操作
  decr k1 //--操作
  append k v  //增加操作
  hash:
  hset user name zyl sex man //对象的多个字段
  hsetnx user name zyl //不存在设置
  hmset user name zyl1 sex man
  hexists user k1  //判断是否有值
  hlen  user  //字段个数
  hdel  user name //删除字段
  hkeys user //所有的字段
  hvals user //所有的值
  hgetall user //所有的键值
  list:
  lpush list1 v1 //从头部v1 加入list
  rpush list1 v1 //从尾部v1 加入list
  lsett list1 0 v1 //设置list中值的下标
  lrem  list1 count value //count>0 从表头开始 删除 value,count<0 从表头删除value,=0删除所有value
  lrange list1 min max //这个区间的值 -1表示无限
  ltrim  list1 min max //保留这个区间的值
  lpop list1 //头部删除
  rpop list1 //从尾部删除
  llen list1 //长度
  sort list1 //返回排序后的结果     
  set: hashtable实现,
  sadd set1 v//增加
  smembers set1 //查看所有元素
  srem set1 v//删除队列中的值
  spop set1 //随机返回并删除名称中的value
  sdiff set1 set2 //和set1 的差集
  sdiffstore tmpset set2 set1 //和set2的差集放到tmpset
  sinter set1 set2 set3//返回交集
  sinterstore tmpset set1 set2//返回交集存放到tmpset
  sunion set1 set2//并集
  sunion tmpset set1 set2//并集放到tmpset
  smove set1 set2 v1 //把v1从set1 移出来放到set2
  scard set1 //个数
  sismember set1 v1 //判断v1是否存在set1中
  srandmember set1//随机返回 一个值
  sorted sort:组合方式
  zadd sset1 0 a //添加数据
  zrange sset1 0 -1 withscores //打印所有数据,按score排序
  zrangebyscore sset1 0 -1 withscores //打印所有score区间的数据,按score排序
  zrevrange sset1 0 -1 withscores //打印所有数据,按score倒序排序
  zrem sset1 v1 //删除值
  zincrby sset1 2 v1//不存就放到,存在就加score score,可排序
  zcount sset1 2 3 //返回区间个数
  zcard sset1 //返回个数
  zscore sset1 v //返回指定值的score
  zremrangebyrank sset1 3 3//删除指定区间的数据
  zremrangebyscore sset1 3 3 //删除区间
  所有:
  keys *   //返回所有符合情况的值
  exists k1 //是否存在key值
  del k1  //删除key
  expire k1 time //设置 有效期单位:秒
  ttl k1  //有效期,单位:秒
  select num //选择数据库
  move k1 num//移动k1到num数据库
  randomkey //随机 返回一个key
  rename k1 k2//把k1改为k2
  type k1 //返回类型 string list,set,zset
  ping //是否正常
  echo //输出数据
  select num //选择数据库 0 ~ 15
  dbsize //当前数据库的key个数
  info  //返回版本信息
  monitor //监控收到的请求
  config get *//所有的配置
  config set requirepass #pass123#
  config set masterauth #pass123#
  auth pass //在线切换密码
  flushdb //删除本数据库的所有key
  flushall //删除所有数据库的所有key
  shutdown //关闭
  bgrewriteaof //重写日志
  //事务
  multi //开启事务
  exec //提交事务
  discard//回滚事务
  //设置主从复制
  slaveof 127.0.0.1 6397 //在线设置主从
  slaveof no one //关闭slave
  //集群
  cluster meet ip port //通知互为集群
  //持久化
  RDB 快照,Snapshotting 现在有了子进程和父进程
  AOF 追加,
  BGREWRITEAOF:快照+AOF方式
  实际使用内容:
  1: 缓存结果只使用 k v形式,缓存对象使用客户端序列化后。
  2: list,可以作为消息通讯
  一致性解决:
  断电后,长时间不可用,数据不一致。当出现这个问题时,你的redis断电,db也shutdown,根据性能业务,暂时解决,设置有效性时间。
  后期解决:
  高可用,集群,不间断扩容
  扩展学习网址:
  http://blog.nosqlfan.com/html/2692.html
页: [1]
查看完整版本: redis摘记