redis命令详解
来源:互联网 发布:程序编程范式是什么 编辑:程序博客网 时间:2024/05/16 11:23
1.使用客户端连接redis服务,需要有一个redis客户端
$ redis-cli -h host -p port -a password
如果是本地的redis服务可以直接使用命令,默认本地 6379端口
$ redis-cli
2.多个redis实例(多库)
设置数据库个数
127.0.0.1:6379> CONFIG SET databases 8
查询数据库个数
127.0.0.1:6379> CONFIG GET databases
切换数据库(选择数据库6,默认连接数据库0)
127.0.0.1:6379> select 6
3.redis对key的操作
DEL 删除指定key(删除key1)
127.0.0.1:6379[1]> DEL key1
(integer) 1
DUMP 序列化给定 key ,并返回被序列化的值
127.0.0.1:6379[1]> DUMP key1
"\x00\xc0\x0b\a\x00/\x95\xc2x/5\xa4U"
EXISTS 查询指定key是否存在
127.0.0.1:6379[1]> EXISTS key1
(integer) 1
KEYS 查找所有符合给定模式( pattern)的 key
127.0.0.1:6379[1]> keys *key*
1) "key1"
EXPIRE 设置key的过期时间
127.0.0.1:6379[1]> EXPIRE key1 20
(integer) 1
20秒后再查询,key1已被删除
MOVE 移动key到其他库(移动key1 到数据库2)
127.0.0.1:6379[1]> MOVE key1 2
(integer) 1
TYPE 查询key所储存的值的类型
127.0.0.1:6379[1]> TYPE key1
string
4.redis支持的数据类型(字符串String,哈希Hash,列表List,集合Set,有序集合sorted set)
4.1 字符串String相关命令
SET 设置指定key值
127.0.0.1:6379[1]> SET key1 value1
OK
GET 获取指定key值
127.0.0.1:6379[1]> GET key1
"value1"
GETRANGE 返回指定key的子字符串
127.0.0.1:6379[1]> GETRANGE key1 0 2
"val"
MSET 设置多个key-value
127.0.0.1:6379[1]> MSET key4 value4 key5 value5
OK
MGET 获取多个给定key值对应的value
127.0.0.1:6379[1]> MGET key1 key2
1) "value1"
2) "value2"
SETNX 只有在 key 不存在时设置 key 的值(key1存在不存储)
127.0.0.1:6379[1]> SETNX key1 11
(integer) 0
STRLEN 返回 key 所储存的字符串值的长度
127.0.0.1:6379[1]> STRLEN key1
(integer) 6
INCR 将 key 中储存的数字值增一
127.0.0.1:6379[1]> get key3
"1"
127.0.0.1:6379[1]> INCR key3
(integer) 2
INCRBY 将 key 所储存的值加上给定的增量值(increment)
127.0.0.1:6379[1]> get key3
"2"
127.0.0.1:6379[1]> INCRBY key3 2
(integer) 4
DECR 将 key 中储存的数字值减一
127.0.0.1:6379[1]> get key3
"4"
127.0.0.1:6379[1]> DECR key3
(integer) 3
DECRBY key 所储存的值减去给定的减量值(decrement)
127.0.0.1:6379[1]> get key3
"3"
127.0.0.1:6379[1]> DECRBY key3 2
(integer) 1
APPEND 如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾
127.0.0.1:6379[1]> APPEND key1 aaa
(integer) 9
127.0.0.1:6379[1]> get key1
"value1aaa"
4.2 哈希Hash相关命令
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象,以用户对象 为例,user{name:lgy,age:25}
HMSET 存储:
127.0.0.1:6379[1]> HMSET user name "lgy" age 25
OK
HSET 修改其中一个属性(age)
127.0.0.1:6379[1]> HSET user age 26
(integer) 0
HGETALL 查询:
127.0.0.1:6379[1]> HGETALL user
1) "name"
2) "lgy"
3) "age"
4) "26"
HGET 查询其中一个属性(name):
127.0.0.1:6379[1]> HGET user name
"lgy"
HMGET 查询多个属性(name和age):
127.0.0.1:6379[1]> HMGET user name age
1) "lgy"
2) "26"
HKEYS 获取所有属性
127.0.0.1:6379[1]> HKEYS user
1) "name"
2) "age"
HLEN 获取属性个数
127.0.0.1:6379[1]> HLEN user
(integer) 2
HINCRBY 给age增加3
127.0.0.1:6379[1]> HINCRBY user age 3
(integer) 29
给age减少3,和String不同,没有找到减少的命令,不过可以使用增加-3来实现
HSETNX 插入不存在的属性,如果存在不插入(name存在,sex不存在)
127.0.0.1:6379[1]> HSETNX user name ligy
(integer) 0
127.0.0.1:6379[1]> HSETNX user sex man
(integer) 1
HDEL 删除一个或多个属性(删除sex,age)
127.0.0.1:6379[1]> HDEL user sex age
(integer) 2
127.0.0.1:6379[1]> HKEYS user
1) "name"
剩余三种类型没用过就不写了
4.3 列表List相关命令
4.4 集合Set相关命令
4.5 有序集合sorted set 相关命令
阅读全文
0 0
- redis命令详解
- redis info命令详解
- redis info命令详解
- Redis命令操作详解
- Redis命令操作详解
- redis debug命令详解
- Redis命令详解
- redis info命令详解
- redis info命令详解
- Redis命令操作详解
- redis 命令详解
- redis 命令 详解 整理
- redis INFO命令详解
- redis info命令详解
- Redis命令操作详解
- redis info命令详解
- redis操作命令详解
- redis命令详解
- webpack不是内部命令问题补充(window系统)
- 2d 3d 转换的补充
- Nginx编译安装
- JavaScript禁止微信浏览器下拉回弹效果
- 不自信,不确定
- redis命令详解
- [UnityUI]循环滑动列表
- 从字符串中取数
- hdu1856 More is better
- 使用freemarker导出word,wps可以打开,office打不开问题
- 后缀自动机(SAM)
- 30+关于如何成为更好Android开发者的简短而专业的建议
- Xcode 9 快速跳转到定义新姿势(Jump to Definition)
- Java API学习(一)java包