Redis是一个基于内存的高性能key-value数据库,提供了丰富的命令来操作数据库和各种数据类型。以下是一些常用的Redis命令及其详细介绍:
连接操作相关的命令
- QUIT:关闭当前连接。
- AUTH:简单密码认证。
对key操作的命令
- EXISTS(key):确认一个key是否存在。如果存在返回1,否则返回0。
- DEL(key):删除一个key。如果key存在则删除,并返回被删除key的个数。
- TYPE(key):返回key对应的值的类型。
- KEYS(pattern):返回满足给定pattern的所有key。
- RANDOMKEY:随机返回key空间的一个key。
- RENAME(oldname, newname):将key由oldname重命名为newname。如果newname存在则删除newname表示的key。
- DBSIZE:返回当前数据库中key的数目。
- EXPIRE(key, seconds):设定一个key的活动时间(秒)。在此之后,key将自动删除。
- TTL(key):获得一个key的活动时间的剩余秒数。如果key不存在或没有设置剩余生存时间,将返回-1。如果key存在且没有剩余生存时间(例如,key已过期),将返回-2。
- SELECT(index):按索引查询。选择指定的数据库。默认有16个数据库,索引号从0开始。
- MOVE(key, dbindex):将当前数据库中的key转移到由dbindex指定的数据库中。
对value操作的命令
- SET(key, value):插入或更新一个key的值。如果key存在则覆盖其值。
- SETNX(key, value):设置key的值,仅当key不存在时才设置。如果key存在,则不做任何操作并返回0;如果key不存在并设置成功,则返回1。
- MSET(key1, value1, key2, value2, ...):同时设置多个key-value对。
- MSETNX(key1, value1, key2, value2, ...):同时设置多个key-value对,仅当所有key都不存在时才设置。如果有一个key存在,则整个操作失败并返回0;如果所有key都不存在并设置成功,则返回1。
- SETEX(key, seconds, value):设置key的值,并指定一个过期时间(以秒为单位)。
- PSETEX(key, milliseconds, value):设置key的值,并指定一个过期时间(以毫秒为单位)。
- GET(key):查询key的值。如果key不存在,则返回nil。
- GETRANGE(key, start, end):获取key的值,并返回其字符串的子串,子串的起始和结束位置由start和end指定。
- GETSET(key, value):先获取key的值,然后设置新的值。返回旧的值。
- DUMP(key):序列化给定key,并返回被序列化的值。
此外,Redis还提供了许多其他命令,如列表相关的命令(LPUSH、RPUSH、LRANGE等)、集合相关的命令(SADD、SREM、SMEMBERS等)和有序集合相关的命令(ZADD、ZRANGE等)。这些命令使得Redis能够灵活地应对各种应用场景。
在使用Redis命令时,可以通过Redis客户端(如redis-cli)在Linux终端进行操作,也可以通过Redis提供的API在各种编程语言中实现。