济南房产信息网站官网,大连网站建设公司排名,东莞市专注网站建设服务机构,华为商城appredis-cli是原生redis自带的命令行工具#xff0c;可以帮助我们通过简单的命令连接redis服务#xff0c;并进行数据管理#xff0c;即redis键#xff08;key#xff09;和redis数据结构的管理。 关于如何进入redis-cli命令行客户端#xff0c;请查看文章#xff1a;Redi…redis-cli是原生redis自带的命令行工具可以帮助我们通过简单的命令连接redis服务并进行数据管理即redis键key和redis数据结构的管理。 关于如何进入redis-cli命令行客户端请查看文章Redis安装部署基于windows平台
1.操作键
Redis键操作是Redis数据库中非常重要和常用的操作。下面通过一张表来介绍一下常用的Redis键操作命令及相关说明具体如表所示。 上述指令实际使用时大小写都可以
1.1 SET命令
使用SET命令为指定键设置值。具体语法如下
SET key value上述语法中SET是为指定键设置值的命令若是所指定的键不存在则创建键否则进行覆盖操作key表示键value表示为指定键设置的值。
下面我们演示为键company指定值itcast具体如下
127.0.0.1:6379 set company itcast从上述返回结果“OK”可以看出我们成功为键company指定值itcast。
1.2 MSET命令
使用MSET命令为多个键设置值具体语法如下
MSET key1 value1 key2 value2 ... keyN valueN上述语法中MSET是为多个键设置值的命令若是键不存在则创建键否则进行覆盖操作key1、key2、…、keyN表示键value1、value2、…、valueN表示要为对应键设置的值。
下面我们演示为键brand1设置值java、键brand2设置值c、键brand3设置值python、键brand4设置值c#、键brand5设置值c、键brand6设置值go具体如下
127.0.0.1:6379 mset brand1 java brand2 c brand3 python brand4 c# brand5 c brand6 go从上述返回结果“OK”可以看出我们成功为键brand1、brand2、brand3、brand4、brand5和brand6分别指定值。
1.3 KEYS命令
使用KEYS命令查找所有符合给定模式pattern正则表达式的键具体语法如下
KEYS PATTERN上述语法中KEYS是查找所有符合给定模式pattern正则表达式键的命令PATTERN是模式也可以为正则表达式。
下面我们演示查找所有键具体如下 从上述返回结果可以看出一共有七个键其中键company是执行“SET”命令创建的键brand1、brand2、brand3、brand4、brand5、brand6是执行“MSET”命令创建。
1.4 GET命令
使用GET命令获取指定键的值具体语法如下
GET key上述语法中GET是用于获取指定键的值的命令key表示键。
下面我们演示获取键company的值具体如下
127.0.0.1:6379 get company从上述返回结果“itcast”可以看出键company的值为itcast说明我们成功获取到键company的值。
1.5 MGET命令
使用MGET命令获取多个键的对应值具体语法如下
MGET key1 key2 ...上述语法中MGET是用于获取指定多个键的值的命令key1、key2 …表示多个键。
下面我们演示获取键brand1、brand2、brand3以及brand的值具体如下
127.0.0.1:6379 mget brand1 brand2 brand3 brand从上述返回结果可以看出键brand1、brand2以及brand3的值分别为heima、chuanzhihui及kudingyu而键brand的值为nil这是因为键brand并不存在因此返回特殊值nil。
1.6 DUMP命令
使用DUMP命令序列化指定的键并返回被序列化的值具体语法如下
DUMP key上述语法中DUMP是用于序列化指定的键并返回被序列化的值的命令key表示键。
下面我们演示序列化键company并返回被序列化的值具体如下
127.0.0.1:6379 dump company从上述返回结果可以看出键company已经被序列化并且被序列化的值为\x00\x06itcast\x06\x00C\x86296^\x8b\xe3。
1.7 EXISTS命令
使用EXISTS命令判断指定键是否存在具体语法如下
EXISTS key上述语法中EXISTS是用于判断指定键是否存在的命令key表示键。 下面我们演示判断键brand6和brand7是否存在若存在则返回1反之返回0具体如下 从上述返回结果可以看出键brand6存在而键brand7不存在。
1.8 TYPE命令
使用TYPE命令查看指定键的类型具体语法如下
TYPE key上述语法中TYPE是用于查看指定键的类型的命令key表示键。 下面我们演示查看键company的类型具体如下
127.0.0.1:6379 type company从上述返回结果可以看出键company的类型为string类型。
1.9 RENAME命令
使用RENAME命令修改指定键的名称具体语法如下
RENAME key newkey上述语法中RENAME是用于修改指定键名称的命令key表示旧键newkey表示新键。
下面我们演示将键company改为newcompany并执行“keys *”命令查看键是否被修改成功具体如下
127.0.0.1:6379rename company newcompany从上述返回结果可以看出键company已经更改为newcompany。
1.10 EXPIRE命令
使用EXPIRE命令设置键的生存时间具体语法如下
EXPIRE key seconds上述语法中 EXPIRE是用于设置指定键生存时间的命令key表示键seconds表示设置的时间以秒计。 下面我们演示将键brand6的生存时间设置为300s具体如下
127.0.0.1:6379 expire brand6 300从上述返回结果“1”可以看出键brand6的生存时间已经成功设置为300s即300s后该键会消失。
1.11 TTL命令
使用TTL命令查看指定键的剩余过期时间具体语法如下
TTL key上述语法中TTL是用于查看指定键剩余过期时间的命令key表示键。 下面我们演示查看键brand6的剩余过期时间具体如下
127.0.0.1:6379 ttl brand6从上述返回结果“209”可以看出键brand6的剩余生存时间为209s。若是键brand6不存在即过期则返回“-2”.若键未设置生存时间则返回-1.
1.12 PERSIST命令
使用PERSIST命令移除指定键的生存时间即将键从带生存时间的状态转换为持久存在的状态具体语法如下
PERSIST key上述语法中PERSIST是用于移除指定键的生存时间的命令key表示键。 下面我们演示移除键brand6的生存时间具体如下
127.0.0.1:6379 persist brand6从上述返回结果“1”可以看出键brand6的生存时间已被成功移除。
1.13 DEL命令
使用DEL命令删除指定键具体语法如下
DEL key上述语法中DEL是用于删除指定键的命令key表示键。 下面我们演示删除键brand6并执行“keys *”命令查看键brand6是否还存在注意若前面键brand6设置的生存时间较短的话未执行删除操作该键就已经不存在了具体如下 从上述返回结果可以看出键brand6已经被成功删除。
2.操作字符串
String字符串是Redis中最基本也是最简单的数据结构Redis为String字符串提供了相关操作命令。下面通过一张表来介绍一下常用的String操作命令及相关说明具体如表所示。
2.1 SET命令
使用SET命令为指定字符串键设置值该命令与操作键的命令一致具体语法如下 SET key value上述语法中SET是为指定字符串设置值的命令若是所指定的字符串键不存在则进行创建操作否则进行覆盖操作key表示字符串键value表示为字符串键设置的值。 下面我们演示为字符串键website设置值www.itcast.cn具体如下
2.2 MSET命令
使用MSET命令为多个字符串键设置对应的值具体语法如下 MSET key value [key value ...]上述语法中MSET是为多个字符串键设置对应值的命令若是该字符串不存在则进行创建操作否则进行覆盖操作key表示字符串的键value表示字符串键设置的值[key value …]表示可以为多个字符串键设置对应的值。
下面我们演示为字符串键website1设置值www.itheima.com、字符串键website2设置值www.boxuegu.com及字符串键website3设置值www.ityxb.com具体如下
127.0.0.1:6379 mset website1 www.itheima.com website2 www.boxuegu.com website3 www.ityxb.com从上述返回结果“OK”可以看出我们成功为字符串键website1、website2以及website3分别设置对应的值。
2.3 GET命令
使用GET命令获取指定字符串键的值具体语法如下
GET key上述语法中GET是用于获取指定字符串键值的命令key表示字符串键。 下面我们演示获取字符串website的值具体如下
2.4 MGET命令
使用MGET命令获取多个字符串键的对应值具体语法如下
MGET key1 key2 ...上述语法中MGET是用于获取指定多个键的值的命令key1、key2 …表示多个键。 下面我们演示获取字符串键website1、website2、website3以及website5的值具体如下
127.0.0.1:6379 mget website1 website2 website3 website5从上述返回结果可以看出字符串键website1、website2、website3的值分别为www.itheima.com、www.boxuegu.com及www.ityxb.com而字符串键website5的值为nil这是因为字符串键website5并不存在因此返回特殊值nil。
2.5 GETSET命令
使用GETSET命令获取指定字符串键的旧值并设置新值具体语法如下
GETSET key value上述语法中GETSET是用于获取指定字符串键的旧值并设置新值key表示字符串键value表示字符串键的新值。若指定字符串键存在则返回该键的旧值反之返回nil特殊值。
下面我们演示获取字符串键website4的旧值并设置新值并执行“getset website4 “www.itczh.com””获取该字符串键website的旧值并设置新值然后执行“get website4”命令查看字符串键website4是否被成功设置新值具体如下 从上述返回结果可以看出最开始字符串键website4不存在因此返回特殊值nil当第一次执行“getset”命令后字符串键website4就被指定值为www.kudingyu.com第二次执行“getset”命令设置字符串键website4新值后返回了字符串键website4的旧值www.kudingyu.com。
2.6 STRLEN命令
使用STRLEN命令获取指定字符串键值的长度具体语法如下
STRLEN key上述语法中STRLEN是用于获取指定字符串键值的长度key表示字符串键。 下面我们演示获取字符串键website4值的长度具体如下 从上述返回结果“13”可以看出字符串键website4的值的长度为13即www.itczh.com的长度为13个字节长度。
2.7 GETRANGE命令
使用GETRANGE命令获取字符串键指定索引范围的值内容具体语法如下
GETRANGE key start end上述语法中GETRANGE是用于获取字符串键指定索引范围的值内容key表示字符串键start表示范围的起始索引end表示范围的结束索引。 下面我们演示获取字符串键website指定索引范围在[49]的值内容具体如下
127.0.0.1:6379 getrange website 4 9从这里可以看出索引从0开始计数。
2.8 SETRANGE命令
使用SETRANGE命令为字符串键的指定索引位置替换值具体语法如下
SETRANGE key offset value上述语法中SETRANGE是用于为字符串键的指定索引位置替换值的命令key表示字符串键offset表示偏移量value表示为字符串键的指定索引位置替换值。 下面我们演示为字符串键website的索引为4的位置替换值为nosql并通过执行“get website”获取该字符串键的值查看是否成功为字符串键website替换值具体如下 从上述返回结果可以看出字符串键website在索引为4的位置处替换值为nosql由于itcast包含5个字节从位置为0处作为起点位置为4处作为终点替换为nosql因此说明我们成功为字符串键website的指定位置替换值。
2.9 APPEND命令
使用APPEND命令为指定字符串键的值末尾追加新内容具体语法如下
APPEND key value上述语法中APPEND是用于为指定字符串键的值末尾追加新内容的命令key表示字符串键value表示追加的新内容。
下面我们演示为字符串键website的值的末尾追加itcast并通过执行“get website”获取该字符串键的值查看是否成功为字符串键website的值的末尾追加新内容具体如下
127.0.0.1:6379append website itcast从上述返回结果可以看出字符串键website的值末尾的内容为itcast因此说明我们成功为字符串键website的值末尾追加内容itcast。
3. 操作list 列表
List列表是一种线性的有序结构Redis为List列表提供了相关的操作命令。下面通过一张表来介绍一下常用的List操作命令及相关说明具体如表所示。
3.1 RPUSH命令
使用RPUSH命令将一个或多个元素推入到列表的右端具体语法如下
RPUSH key value上述语法中RPUSH是将一个或多个元素推入到列表的右端的命令若是所指定的列表不存在则会创建空列表然后往该列表中推入元素key表示列表value表示为指定列表插入的元素值。
下面我们演示依次将元素blue、green、purple、red、white推入到列表color的右端并执行“lrange color 0 -1”命令查看是否已经将五个元素推入到列表color的右端具体如下边所示 从返回结果可以看出我们成功将元素blue、green、purple、red、white五个元素推入到列表color的右端。 若同时推多个元素直接在value位置排列即可如
3.2 LPUSH命令
使用LPUSH命令将一个或多个元素推入到列表的左端具体语法如下
LPUSH key value上述语法中LPUSH是将一个或多个元素推入到列表的左端的命令若是所指定的列表不存在则会创建空列表然后往该列表中推入元素key表示列表value表示为指定列表推入的元素值。
下面我们演示依次将元素apple、banana、mango推入到列表color的左端并执行“lrange color 0 -1”命令查看是否已经将三个元素推入到列表color的左端具体如下边所示 从返回结果可看出我们成功往列表中推入11个元素其中有8个元素是执行“rpush”命令推入到列表color中三个元素是执行“lpush”命令推入到列表color中。
3.3LRANGE命令
使用LRANGE命令获取列表指定索引范围内的元素具体语法如下
LRANGE key start stop上述语法中LRANGE是用于获取列表指定索引范围内的元素key表示列表start表示起始索引end表示结束索引。
下面我们演示获取列表color指定索引范围[07]的元素具体如下
3.4 LINDEX命令
使用LINDEX命令获取列表指定索引位置上的元素具体语法如下
LINDEX key index上述语法中LINDEX是用于获取列表指定索引位置上的元素的命令key表示列表index表示索引位置。 下面我们演示获取列表color中索引位置为3的元素具体如下
3.5 RPOP命令
使用RPOP命令移除列表最右端的元素具体语法如下
RPOP key上述语法中RPOP是用于移除列表最右端元素的命令key表示列表。
下面我们演示移除列表color最右端的元素并执行“lrange color 0 -1”命令查看最右端的元素是否被移除具体如下
3.6 LPOP命令
使用LPOP命令移除列表最左端的元素具体语法如下
LPOP key上述语法中RPOP是用于移除列表最右端元素的命令key表示列表。 下面我们演示移除列表color最左端的元素并执行“lrange color 0 -1命令查看最左端的元素是否被移除具体如下
3.7 LLEN命令
使用LLEN命令获取列表中值的长度也就是元素的个数具体语法如下
LLEN key上述语法中LIND是用于获取列表中值的长度的命令key表示列表。 下面我们演示获取列表color中值的长度也就是元素的个数具体如下
3.8 LREM命令
使用LREM命令移除列表中的指定元素具体语法如下
LREM key count value上述语法中LREM是用于移除列表中的指定元素的命令key表示列表count参数的值决定了LREM命令移除元素的方式 若是count0则从列表头开始向列表尾搜索移除与value相等的元素数量为count的绝对值 若是count0则从列表尾开始向列表头搜索移除与value相等的元素数量为count 的绝对值 若是count0移除列表中所有与value相等的值value表示要移除的元素。 下面先执行“rpush color “hello” “hello” “world” “hello””命令往列表mycolor的右端推入4个元素然后再演示从左往右移除列表mycolor中值为hello的两个元素并执行“lrange mycolor 0 -1命令查看列表中值为hello的2个元素是否被移除具体如下
操作集合
Sets集合是Redis的基本数据结构之一。Redis为Sets集合提供了相关的操作命令。下面通过一张表来介绍一下常用的Sets操作命令及相关说明具体如表所示。
4.1 SADD命令
使用SADD命令将一个或多个元素添加到集合中具体语法如下
SADD key member [member…]上述语法中SADD是将一个或多个元素添加到集合中的命令若是所指定的集合不存在则创建集合并将元素添加进该集合中key表示集合member [member…]表示一个或多个元素。 下面我们演示将元素redis、mongodb、hbase添加到集合databases中具体如下
4.2 SCARD命令
使用SCARD命令获取集合中的元素数量具体语法如下
SCARD key上述语法中SCARD是获取集合中元素数量的命令key表示集合。 下面我们演示获取集合databases中的元素数量具体如下
4.3 SMEMBERS命令
使用SMEMBERS命令获取集合中的所有元素具体语法如下
SMEMBERS key上述语法中SMEMBERS是用于获取集合中所有元素的命令key表示集合。 下面我们演示获取集合databases中的所有元素具体如下
4.4 SISMEMBER命令
使用SISMEMBER命令判断指定元素是否存在于集合中具体语法如下
SISMEMBER key member上述语法中SISMEMBER用于判断指定元素是否存在于集合中的命令key表示集合member表示需要判断的元素。 下面我们演示检查元素redis是否存在于集合databases若存在则返回1反之返回0具体如下
4.5 SREM命令
使用SREM命令移除集合中的一个或多个已存在的元素具体语法如下
SREM key member [member…]上述语法中SREM是用于移除集合中的一个或多个已存在元素的命令key表示集合member [member…]表示一个或多个元素。 下面我们演示移除集合databases中的元素hbase并执行“smembers databases”命令查看元素hbase是否被移除具体如下
4.6 SMOVE命令
使用SMOVE命令将元素从一个集合移动到另一个集合具体语法如下
SMOVE source destination member上述语法中SMOVE是用于将元素从一个集合移动到另一个集合的命令source表示原始集合destination表示目标集合member表示要移动的元素。
下面我们演示将元素redis从集合databases中移动到集合databasesNew中注首先执行“sadd databasesNew “mysql””命令创建集合databasesNew并插入元素“mysql”并执行“smove databases databasesNew redis”命令查看是否成功将元素redis从集合databases中移动到databasesNew中具体如下
5.操作散列
Hash散列也是Redis的基本数据结构之一。Redis为Hash散列提供了客户端的操作命令。下面通过一张表来介绍一下常用的Hash操作命令及相关说明具体如表所示。
5.1 HSET命令
使用HSET命令为散列中指定键设置值具体语法如下
HSET key field value上述语法中HSET是用于为散列中指定键设置值的命令若是散列不存在则会创建一个新的散列并进行HSET操作反之进行覆盖操作key表示散列field表示散列中的键value表示键对应的值。
下面我们演示为散列article中的键title设置值greeting若是散列article中不存在指定键title则进行创建和赋值操作并返回1若是散列article中存在键title则进行覆盖操作并返回0具体如下
5.2 HMSET命令
使用HMSET命令为散列中多个键设置值具体语法如下
HMSET key field value [field value ...]上述语法中HMSET是用于为散列中的多个键设置值的命令key表示散列field value [field value …]表示散列中的一个或多个键及其对应的值。 下面我们演示为散列article中的键content、author分别设置值Hello World、peter具体如下
5.3 HGET命令
使用HGET命令获取散列中指定键的值具体语法如下
HGET key field上述语法中HGET是用于获取散列中指定键的值的命令key表示散列field表示散列中的键。 下面我们演示获取散列article中键title的值具体如下
5.4 HMGET命令
使用HMGET命令获取散列中多个键的值具体语法如下
HMGET key field [field ...]上述语法中HMGET是用于获取散列中多个键的值的命令key表示散列field [field …]表示散列中的一个或多个键。 下面我们演示获取散列article中键content和键author的值具体如下
5.5 HGETALL命令
使用HGETALL命令获取散列中的所有键值对具体语法如下
HGETALL key 上述语法中HMGET是用于获取散列中的所有键值对的命令key表示散列。 下面我们演示获取散列article中所有的键值对具体如下
5.6 HKEYS命令
使用HKEYS命令获取散列中的所有键具体语法如下
HKEYS key 上述语法中HKEYS是用于获取散列中的所有键的命令key表示散列。 下面我们演示获取散列article中所有的键具体如下
5.7 HVALS命令
使用HVALS命令获取散列中的所有键的值具体语法如下
HVALS key 上述语法中HVALS是用于获取散列中的所有键的值的命令key表示散列。 下面我们演示获取散列article中所有键的值具体如下
5.8 HDEL命令
使用HDEL命令删除散列中指定键及其相对应的值具体语法如下
HDEL key field [field ...]上述语法中HDEL是用于删除散列中指定键及其相对应的值的命令key表示散列field [field …]表示散列中的一个或多个键。 下面我们演示删除散列article中键title及其对应的值greeting并通过执行“hgetall article”命令查看键title及其对应的值greeting是否被删除具体如下
6.操作有序集合
Sorted Sets有序集合是Redis中最为灵活的数据结构。Redis为Sorted Sets有序集合提供了客户端的操作命令。下面通过一张表来介绍一下常用的Sorted Sets操作命令及相关说明具体如表所示。
6.1 ZADD命令
使用ZADD命令为有序集合添加一个或多个键值对具体语法如下
ZADD key [NX|XX] [CH] [INCR] score member [score member ...]上述语法中ZADD是用于为有序集合添加一个或多个键值对的命令key表示有序集合 [NX|XX]、[CH]、[INCR]为可选参数 [NX|XX]表示不更新或更新存在的元素 NX表示不只添加新元素XX表示不添加新元素 [CH]表示返回发生变化的元素总数 [INCR]表示指定元素按照分值进行递增操作 score member [score member …]表示有序集合的一个或多个的键值对其中score表示键值对中的键即分值member表示键值对中的值即元素。 下面我们演示为有序集合salary添加三个键值对分别为“分值5000元素Peter”、“分值3500元素Tom”以及“分值6000元素Jack”具体如下
6.2 ZCARD命令
使用ZCARD命令获取有序集合中元素的个数具体语法如下
ZCARD key上述语法中ZCARD是用于获取有序集合中元素的个数的命令key表示有序集合。 下面我们演示获取有序集合salary中元素的个数具体如下
6.3 ZCOUNT命令
使用ZCOUNT命令统计有序集合中指定分值范围内的元素个数具体语法如下
ZCOUNT key min max上述语法中ZCOUNT是用于统计有序集合中指定分值范围内的元素个数的命令key表示有序集合min表示区间范围的最小值max表示分值范围的最大值。 下面我们演示统计有序集合salary中分值范围在[20005000]内的元素个数具体如下
6.4 ZRANGE命令
使用ZRANGE命令获取有序集合中指定索引范围内的元素具体语法如下
ZRANGE key start stop上述语法中ZRANGE是用于获取有序集合中指定索引范围内元素的命令key表示有序集合start表示起始索引stop表示终止索引。 下面我们演示获取有序集合salary中指定索引范围[01]内的元素具体如下
6.5 ZSCORE命令
使用ZSCORE命令获取有序集合中指定元素的分值具体语法如下
ZSCORE key member上述语法中ZSCORE是用于获取有序集合中指定元素的分值的命令key表示有序集合member表示有序集合中的元素。 下面我们演示获取有序集合salary中指定元素Peter的分值具体如下
6.6 ZREM命令
使用ZREM命令移除有序集合中的指定元素具体语法如下
ZREM key member [member ...]上述语法中ZREM是用于获取有序集合中指定元素分值的命令key表示有序集合member [member …]表示有序集合中的一个或多个元素。 下面我们演示移除有序集合salary中的指定元素Jack并执行“zrange salary 0 -1”命令查看元素Jack是否被移除具体如下