Redis指令手册中文版

作者: nick 分类: linux, redis 发布时间: 2010-08-18 15:28 ė 61条评论

连接控制

QUIT :退出,关闭连接

代码实例:连接 退出

telnet localhost 6379



QUIT
  • AUTH : 密码验证
  • 举例说明

    1、首先需要在redis的配置文件redis.conf中requirepass注释掉的内容,设置需要密码连接,否则auth任何密码都通过
    2、重新启动redis
    3、验证 auth testpassword,testpassword是我在配置文件中设置的requirepass testpassword
    4、redis 服务器的速度众所周知,因此官方文件中 提醒设置比较复杂的密码,防止机器破解

    telnet localhost 6379
    
    
    
    Escape character is '^]'.
    
    
    
    auth dsddsd
    
    
    
    -ERR invalid password
    
    
    
    keys global*
    
    
    
    -ERR operation not premitted
    
    
    
    auth ddddd
    
    
    
    -ERR invalid password
    
    
    
    auth testpassword
    
    
    
    +OK

    管理数据操作

  • EXISTS :判断一个键是否存在;存在返回 1;否则返回0;
  • 举例:

    EXISTS burce
    
    
    
    :0
    
    
    
    SET bruce 10
    
    
    
    paitoubing
    
    
    
    +OK
    
    
    
    SET test 5
    
    
    
    paitoubing
    
    
    
    +OK
    
    
    
    -ERR unknown command 'ing'
    
    
    
    EXISTS bruce
    
    
    
    :1

    上面的程序
    EXISTS bruce是否存在,结果是不存在,然后set一个key为bruce 数据长度为10的数据,如果数据长度操作设置的值,多余的字节会当作redis命令来处理

    DEL :删除某个key,或是一系列key;DEL key1 key2 key3 key4

    TYPE : 返回某个key元素的数据类型 ( none:不存在,string:字符,list,set,zset,hash)

    KEYS : 返回匹配的key列表 (KEYS foo*:查找foo开头的keys)

    RANDOMKEY : 随机获得已经存在的key

    RENAME : 更改key的名字,如果名字存在则更改失败

    DBSIZE : 返回当前数据库的key的总数

    EXPIRE : 设置某个key的过期时间(秒),(EXPIRE bruce 1000:设置bruce这个key1000秒后系统自动删除)

    TTL : 查找某个key还有多长时间过期,返回时间秒

    SELECT : 选择数据库

    MOVE : 把key从一个数据库转移到另外一个库

    FLUSHDB : 清空当前数据库数据

    FLUSHALL :清空所有数据库数据

    字符串类型的数据操作

    SET 存一个数据到数据库 SET keyname datalength data (SET bruce 10 paitoubing:保存key为burce,字符串长度为10的一个字符串paitoubing到数据库)

    GET :获取某个key 的value值

    GETSET GETSET可以理解成获得的key的值然后SET这个值,更加方便的操作 (SET bruce 10 paitoubing,这个时候需要修改bruce变成1234567890并获取这个以前的数据paitoubing,GETSET bruce 10 1234567890)

    MGET 一次性获得多个key的数据 (MGET uid:1:name uid:1:email uid:1:ciy)

    SETNX SETNX与SET的区别是SET可以创建与更新key的value,而SETNX是如果key不存在,则创建key与value数据

    SETEX SETEX = SET + EXPIRE,貌似我的这个版本没有办法测试

    MSET 一次性设置多个参数的值(MSET uid:1:name shjuto uid:1:email shjuto@gmail.com uid:1:city 8 回车 nanchang)最后一个值需要回车输入,和SET一样,不知为啥。

    MSETNX 如果设置的key不存在的话,或是叫做新key的话;一次性设置多个参数的值(MSET uid:1:name shjuto uid:1:email shjuto@gmail.com uid:1:city 8 回车 nanchang)最后一个值需要回车输入,和SET一样,不知为啥。

    INCR 自增,有点类是mysql incr.(INCR global:uid)

    INCRBY 自增 +length ,(INCRBY uid 5)原来的基础+5=result

    DECR 自减

    * DECRBY 自减 -lenght

    APPEND 一个例子足以说明

    redis> exists mykey
    
    
    
    (integer) 0
    
    
    
    redis> append mykey "Hello "
    
    
    
    (integer) 6
    
    
    
    redis> append mykey "World"
    
    
    
    (integer) 11
    
    
    
    redis> get mykey
    
    
    
    "Hello World"

    SUBSTR 一个例子足以说明一切,LIKE PHP ‘S STYLE

    redis> set s "This is a string"
    
    
    
    OK
    
    
    
    redis> substr s 0 3
    
    
    
    "This"
    
    
    
    redis> substr s -3 -1
    
    
    
    "ing"
    
    
    
    redis> substr s 0 -1
    
    
    
    "This is a string"
    
    
    
    redis> substr s 9 100000
    
    
    
    " string"
    
    原文:http://blog.csdn.net/cnpdn/archive/2010/05/20/5612698.aspx

    本文出自 传播、沟通、分享,转载时请注明出处及相应链接。

    本文永久链接: http://www.db.run/?p=970

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

    Ɣ回顶部