106_Reids基础命令——开关性能、String、List

Redis数据库的启动与关闭:

  1、启动redis服务:(其实就是启动redis服务器)
    redis-server:前台启动(默认采用的是redis-conf配置文件,这个文件决定了ip地址与端口号)
    redis-server &:后台启动
    redis-server redis-conf6380:这个配置文件可以使我们自定义端口与ip启动服务,在主从同步用到了。

  2、客户端发起连接请求
    redis-cli:启动redis的客户端,默认连接本机(127.0.0.1)上的6379端口上的redis服务。
    redis-cli -h 192.168.2.129 -p 6379:启动redis客户端,指定ip和port。
  3.退出客户端
    exit/quit

  4、关闭redis服务:
    redis-cli -h 192.168.2.129 -p 6379 shutdown :如果使用实际ip地址关闭,必须在非受保护模式下运行;
    redis-cli -h 127.0.0.1 -p 6379 shutdown:无论在任何运行模式下都可以关闭。
=====================================================================================
关于redis的使用指令:
  1、基本指令:
    1)、测试redis性能:redis-benchmark(在任意目录下执行)
    2)、测试redis服务是否正常运行:ping--->pong(我们敲击ping返回pong)
    3)、统计redis服务端的信息:info [section]
      info:查看redis所有的统计信息
      info Replication:查看redis某一项统计信息,replication是【主从节点】参数
    4)、切换数据库实例:redis自动创建16个数据库实例,并且给数据库实例进行编号(0-15),默认使用编号是0的数据库实例。
      select 1 //切换到第二个数据库
    5)、查看数据库中有记录的条数(键值对的个数):dbsize
    6)、查看数据库中有哪些key:keys *
    7)、清空当前数据库中所有的数据:flushdb
    8)、清空所有数据库中的数据:flushall
  2、redis的五种数据结构:
    针对应用程序处理的不同数据类型存储在不同的数据结构中。
    基本类型数据(八大基本类型、String)----string
    数组、list----------------------------list
    set-----------------------------------set
    实体类--------------------------------hash
    按照某种标准排序的set-----------------zset
   3、关于key基本操作指令(五种数据类型都适用):k-v
    1)、查看数据库中key的数量:dbsize
    2)、查看数据库中有哪些key:keys [参数]
      keys *:查看数据库中所有的key
      keys w*d:查看数据库所有以w开头,以d结尾的key。
      keys w?d:查看数据中所有w开头,d结尾,中间有任何一个字符的key。
      keys wo[abc]d:查看数据中所有wo开头,d结尾,中间有任何一个字符(只能从abc选)的key。
    3)、判断指定的key在数据库是否存在:exists key key key.....
      exists word
      exists word k1 k2 k3...//一次性判断多个key,他的返回值是存在几个key
    4)、移动key到指定的数据库实例:move key db
      move word 1:把word移动到编号是1的数据库实例中。
    5)、查看key的剩余生存时间:ttl(time to live) key
      |->-1:key没有设置最大生存时间,key永远不会自动删除。
      |->n:key最大能生存n秒
      |->-2:key不存在
    6)、设置key的最大生存时间:expire key seconds(这个方法好像只能对已经创建好的键设置)
      expire k1 20
    7)、查看key的数据类型:type key
      type k1
    8)、修改key的名字:rename key newKey
      rename k1 kk1 //将k1修改成kk1
    9)、删除key:del key key .....
      del kk1 k2  //一次性删除多个key
4、关于字符串类型数据的操作命令:k-v
  1)、将字符串设置到key中:set k v
    set k1 v1
    *如果k1已经存在,则后方的value会把原来的value覆盖。
  2)、获取key中的数据:get key
    get k1
    get count
    get flag
  3)、往字符串值中追加字符串:append key value
    append k1 abc
  4)、求字符串长度:strlen key
    strlen k1
  5)、将字符串key中的值做加1运算:incr key
    |->要求key中的字符串只能是数字,否则,报错。
    incr count
    incr k1---报错
  6)、将字符串key中的值做减1运算:decr key
    |->要求key中的字符串只能是数字,否则,报错。
    decr count
    decr k1--报错
  7)、将字符串key中的值做加一个数运算:incrby key offset(只能做整数加减)
    |->要求key中的字符串只能是数字,否则,报错。
    incrby count 5
    incrby k1--报错
  8)、将字符串key中的值做减一个数运算:decrby key offset
    |->要求key中的字符串只能是数字,否则,报错。
    decrby count 5
    decrby k1--报错
  9)、截取字符串中从下标为startIndex字符开始到下标为endIndex的字符结束:getrange key startIndex endIndex
    下标都是从0开始计算,下标也可以是负数,表示从后往前计算,比如:-1表示最后一个字符的下标。
    v1abc
    getrange k1 1 3==>1ab
    getrange k1 1 -1 ===>1abc
    getrange k1 1 -2 ===>1ab
  10)、使用value覆盖字符串key,从下标为startIndex字符开始覆盖,指导覆盖完毕:setrange key startIndex value
    v1abc
    setrange k1 2 xx==>v1xxc (注意此时我们的下标不能以-1表示最后一个)
  11)、设置key的同时,指定最大生存时间:setex key seconds value
    setex k2 20 zhangSan
  12)、往key中设置字符串,只有当key不存在时才设置,如果key已经存在,则不设置:setnx key value
    setnx k1 vvvv1
  13)、批量设置key-value字符串:mset key vlaue [key value key value .....]
    mset k2 v2 k3 v3 k4 v4 k5 v5
  14)、批量获取字符串:mget key [key key key ....]
    mget k1 k2 k3 k4 k5 count
  15)、批量往key中设置字符串,只有当所有的key不存在时才设置,如果有一个key已经存在,则全部设置失败:msetnx key value [key value ....]
    msetnx aa bb cc dd k1 vvvv1
5、关于列表(list)操作命令:一个key有多个值(元素),有序可重复,左侧是表头右侧是表尾。
  1)、将一个或者多个值插入到表头:lpush key value [value value .....]
    5 4 3 2 1
    lpush list01 1
    lpush list01 2
    lpush list01 3 4 5
  2)、将一个或者多个值插入到表尾:rpush key value [value value .....]
    1 2 3 4 5
    rpush list02 1
    rpush list02 2 3 4 5
  3)、获取列表的元素:lrange key startIndex endIndex
    下标都是从0开始计算,下标也可以是负数,表示从尾往前计算,比如:-1表示最后一个元素的下标。
    5 4 3 2 1
    lrange list01 1 3===>432
    lrange list01 0 -1
  4)、从表头中移除元素:lpop key
    lpop list01
  5)、求列表长度:llen key
    llen list01
  6)、截取列表中指定下表区间的元素组成的子列表,并且赋值给key:ltrim key startIndex endIndex
    4 3 2 1
    ltrim list01 1 2===>3 2
  7)、将列表中的指定元素替换成某一个值:lset key index value
    lset list01 1 5
  8)、往列表中值为pivot的元素的前边/后边插入value:linsert key before/after pivot value
    linsert list01 before 5 4
    linsert list01 after 4 6

 

posted on 2020-04-14 13:19  十年磨三劍  阅读(172)  评论(0编辑  收藏  举报

导航