Redis常用命令总结

一、Redis简介

       Redis是一个高性能的key-value的缓存数据库,优点如下:

       1. 读写性能快,Redis能读的速度是110000次/s,写的速度是81000次/s 

       2. 支持的数据类型超多,字符串,列表,哈希,集合等。

       3. 可持久化,可以通过命令将缓存中的数据持久化到本地的磁盘,当再次启动redis时,可从磁盘中将数据恢复。

二、Redis命令

1. 系统基本命令

        可支持的数据类型有: String,hash,List,Collection,下面依次介绍常用的命令: 

1) ping: 测试是否连接到redis,如果连接成功则返回pong.  

            连接redis的命令:

           redis-cli -h 127.0.0.1 -p 6379 -a bingbing

           

2) 查看redis服务器信息: info,可以通过此命令显示redis服务当前状态下的详细信息, 包括版本等信息。

       查看所有的配置信息: get config *  :

3)查看和设置密码: 

          获取密码:   config get requirepass 

          设置和修改密码:   config set requirepass 密码

          

          密码认证: auth password  ,认证成功,返回ok,认证失败,返回 invalid password

           

4) 查看当前连接的客户端数量

   info clients

 

5) 获取最大连接客户端数量

      config  get maxclients

 

2. 字符串相关命令

1)  字符串类型相关操作的常用命令

            如果已经设置了密码,则需要先进行auth认证,认证通过了即可进行下面的操作:

            设置修改一个key: set key value

            获取指定的key:     get key

             

            查看redis里的所有key:   keys *

         

 

2) 获取指定指定范围的子串: getrange key start end  ,下标从0开始,获取下标从start到end范围内的字符串[start,end]

            

3) 返回指定key的值的长度:  strlen  name  ,返回Integer类型

                

4) 在指定的key后追加字符串: append key value,  在key 后面添加一个value的字符串

                     

5) 获取所有给定key的值:  mget key1[key2...] 

                   

6) 同时设置一个或者多个键值对:  mset key1 value1 key2 value2 [key value .....]

               

7)  设置key的失效时间

           格式:  set key value ex  second   ,给key设置second秒时间,超过这个时间后,这个key将会失效,不会再查到

       

3. 哈希类型数据常用命令

       通过命令来操作哈希表,适用于存储对象,存放数据的形式是以 field-value形式,每个哈希表可以存放2^32-1个键值对。

1)给哈希表test设置field和value

              hmset test field value[field vaule....]

 

2)  获取test表中的指定的filed字段对应的value值,可以写多个

              hmget test field[field....]

             比如 设置 一个名为test的hash表,含有两条数据, 一个为username:bingbing , 另一个为 password:123

         

3) 获取test哈希表中所有的key和value键值对,结果以一个键一个值的形式来返回

              hgetall  test

              

4) 获取key表的所有的键   

    hkeys  key(表) 

5) 获取key表中所有的值

    hvals key(表), 获取key表的所有值

            

6)  使用hsetnx命令获取哈希表中的指定field

        hsetnx key field value

    只有当key表中的field字段不存在时,才创建field,否则返回为0

              

4. 有序集合(sorted set)

     sorted set 中的每个元素都会关联一个 double 类型的分,redis 通过分数来为集合中的成员进行从小到大的排序, 默认的顺序是从小到大的,该数据类型一般用来做排行榜是非常适合的。

1) 往有序集中添加元素

      zadd class:1 1 redis

2) 遍历指定范围的有序集合,比如查询分数在[0,10]之间的所有元素集,取闭区间。

      zrange class:1 0 10

3)  获取元素在集合中的位置,下标从0开始

       zrank class:1 nginx 

4) 获取有序集的元素个数

       ZCARD class:1

5) 移除指定范围分数的元素, 如移除 class:1中分数范围在[1,2]的所有元素

     ZREMRANGEBYSCORE class:1 1 2

5. PUB/SUB

1) Redis的发布订阅模式,redis可以发布一条消息,被多次消费。

      开启一个信道:

           publish redisChannel  123

     订阅信道:
           subscribe redisChannel 

         

      服务端发送消息返回: 

        

        被消费2次,就返回结果为2

 

三、ubantu上使用redis

       1.查看端口号对应的进程
           lsof -i 6379

       2. 查看redis进程
          ps -ef | grep redis

       3. 使用redis客户端远程登录到其他redis服务器
          redis.cli.exe -h 192.168.1.225 -a 6379

       4. redis对外开放端口
       1) 设置密码
            requirepass 123456
       2)  绑定IP,0.0.0.0为对外开放

            bind 0.0.0.0

       3)保护模式关闭
           protected-mode no

          如果redis的保护模式开启了,那么其他客户端将无法访问。

       5.制作redis 启动脚本

           centos版的redis的配置文件redis.conf和启动文件redis-cli.exe、redis-server.exe文件不在同一级目录,因此可以写一个脚本来启动redis。

 

1) 新建一个redis.sh文件,里面包含如下内容:

cd redis-3.2.1/src
./redis-server ../redis.conf 

2) 文件授权,授权为可执行文件

chmod 777 redis.sh

3) 执行命令 ./redis.sh>,成功了的话会弹出redis服务器的窗口。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌托邦钢铁侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值