码迷,mamicode.com
首页 > 其他好文 > 详细

redis学习笔记

时间:2015-07-07 18:56:04      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:

基本安装和用法:http://www.tuicool.com/articles/QzMRNb

redis访问方式:./src/redis-cli -h [host] -p [port] 或者直接./src/redis-server redis.conf

reis基本用法-database:虽然redis是按照key-value进行存储,但redis引入了“databse”概念:

  • reids安装key-value的方式存储数据,每个key都属于一个databses;
  • 默认是redis开启了16个database,编号为0~15;
  • 通过redis-cli登录redis后,默认的是第0个databases;

切换databases用>select [DB INDEX] 如:select 12

查看redis各个databases的keys统计信息:>info keyspace

技术分享

redis基本用法:

Strings:set QQ tecent; 

      get qq;

     exists qq;

integer:

     incr tresss;

     incr 将 key 中储存的数字值增一,如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作。如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

     desr trees;

lists:

     rpush mylist item1;

     rpush 将一个或多个值 value 插入到列表 key 的表尾(最右边)。如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表尾:比如对一个空列表 mylist 执行 RPUSH mylist c ,得出的结果列表为 c ,等同于执行命令 RPUSH mylist a 、 RPUSH mylist b 、 RPUSH mylist c 。如果 key 不存在,一个空列表会被创建并执行 RPUSH 操作。

     lpush mylist item3;将一个或多个值 value 插入到列表 key 的表头

     lrange mylist 0 -1;返回列表 key 中指定区间内的元素,区间以偏移量 start 和 stop 指定。

下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

     lpop mylist;移除并返回列表 key 的头元素

     rpop mylist;

hash:

      hset myhash key value1;

      hset myhash key values2;

      技术分享

     hget myhash key2;==>"value2";

     hgetall myhash;==>"key1" "value1" "key2" "value2"

     hvals myhash;==>"values1" "value2";

     hkeys myhash;==>"key1" "key2"

sets:

     sadd myset sky;

     sadd myset moon;

     技术分享

    sismember myset sky;判断 sky 元素是否集合 myst 的成员。是怎返回1 不是则返回0;

    smembers myset;==>"key" "moon".返回集合 key 中的所有成员。

    sinter myset myset2;求交集:求myset 和myset2的共同元素;

    sdiff myset myset2;求差集:myset-myset2;

    sunion myset myset2;求并集:myset U myset2;

sorted sets:

     zadd z1 1 mon;

   zadd z1 2 tur;

   zadd z1 3 wen;

    技术分享

   zscore z1 tur==>"2"

   zcard z1==>"3

   zrange z1递增排序

   zrevrange z1 0 2==>"wen" "tur" "mon"

   ZREVRANGE key start stop [WITHSCORES], 返回有序集 key 中,指定区间内的成员。其中成员的位置按 score 值递减(从大到小)来排列。具有相同 score 值的成员按字典序的逆序(reverse lexicographical order)排列。除了成员按 score 值递减的次序排列这一点外, ZREVRANGE 命令的其他方面和 ZRANGE 命令一样。

pub/sub:

     Puber>publish ch1 "helloworld"==>2将信息 message 发送到指定的频道 channel。返回值为接收到信息 message 的订阅者数量。

     技术分享

    subscribe ch1 

    SUBSCRIBE channel [channel ...]订阅给定的一个或多个频道的信息。返回值如下:

    技术分享

redis管理:

    auth :AUTH password==>通过设置配置文件中 requirepass 项的值(使用命令 CONFIG SET requirepass password ),可以使用密码来保护 Redis 服务器。如果开启了密码保护的话,在每次连接 Redis 服务器之后,就要使用 AUTH 命令解锁,解锁之后才能使用其他 Redis 命令。如果 AUTH 命令给定的密码 password 和配置文件中的密码相符的话,服务器会返回 OK 并开始接受命令输入。

    技术分享

    ping :PING==>使用客户端向 Redis 服务器发送一个 PING ,如果服务器运作正常的话,会返回一个 PONG 。

    select [number]:切换到指定索引的数据库;

    quit:退出当前的连接;

    dbsize:统计当前database的keys的数量;

    info memory==>INFO [section]获取当前服务器的状态和统计。

    section包括:Server/Client/memory/Persistence/Stats/Replication/CPU/keyspace;

     save==>SAVE 命令执行一个同步保存操作,将当前 Redis 实例的所有数据快照(snapshot)以 RDB 文件的形式保存到硬盘,一般来说,在生产环境很少执行 SAVE 操作,因为它会阻塞所有客户端,保存数据库的任务通常由 BGSAVE 命令异步地执行。然而,如果负责保存数据的后台子进程不幸出现问题时, SAVE 可以作为保存数据的最后手段来使用。

    bgsave==>在后台异步(Asynchronously)保存当前数据库的数据到磁盘,BGSAVE 命令执行之后立即返回 OK ,然后 Redis fork 出一个新子进程,原来的 Redis 进程(父进程)继续处理客户端请求,而子进程则负责将数据保存到磁盘,然后退出。

    flushdb==>清空当前数据库中的所有 key。

    flushall==>清空整个 Redis 服务器的数据(删除所有数据库的所有 key )。此命令从不失败。

    monitor==>监听所有redis服务器接收到的请求,实时打印出 Redis 服务器接收到的命令,调试用。

    shutdown==>SHUTDOWN 命令执行以下操作:

    • 停止所有客户端
    • 如果有至少一个保存点在等待,执行 SAVE 命令
    • 如果 AOF 选项被打开,更新 AOF 文件
    • 关闭 redis 服务器(server)

     SLAVEOF host port==>SLAVEOF 命令用于在 Redis 运行时动态地修改复制(replication)功能的行为。

     通过执行 SLAVEOF host port 命令,可以将当前服务器转变为指定服务器的从属服务器(slave server)。

     如果当前服务器已经是某个主服务器(master server)的从属服务器,那么执行 SLAVEOF host port 将使当前服务器停止对旧主服务器的同步,丢弃旧数据集,转而开始对新主服务器进行同步。

     另外,对一个从属服务器执行命令 SLAVEOF NO ONE 将使得这个从属服务器关闭复制功能,并从从属服务器转变回主服务器,原来同步所得的数据集不会被丢弃。

     HELP==>如:help asdd

     

 

redis学习笔记

标签:

原文地址:http://www.cnblogs.com/lukexwang/p/4627527.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!