markdown
## 基本操作
### 切换数据库
```text
# index[16] 从 0 - 15
select index
```
### key:value操作
```text
#添加key:value
set name harlod
根据key获取value
get name
#数据库存储数据量
DBSIZE
#获取所有key
keys *
#确认key是否存在
EXISTS name
#key过期时间 s
EXPIRE name 10
#查看过期时间 s
ttl name
#查看key对应value的类型
TYPE name
#在key对应的值上apped test
APPEND key test
```
### 清空数据库
```text
清空全部数据库
FLUSHALL
#清空当前数据库
FLUSHDB
```
## redis-benchmark 压力测试
```text
#参数
-h host
-p port
-s socker
-c 并发连接数
-n 请求数目
-d get/set value的数据大小
-k 1=keep_alibe 0=reconnect
-r 随机
-P 通过管道传输请求
-q 仅显示query/sec值
-csv 以csv文件格式输出
-l 永久测试
-t 仅运行以逗号分割的测试命令列表
```
```text
redis-benchmark -h localhost -p 6379 -c 1000 -n 100000
```
## 数据类型
### 常用
#### string
```text
set views 0
#减1
DECR views
#加q
INCR views
#加120
INCRBY views 120
#减120
DECRBY views 120
#获取key对应的 value[1,3]
GETRANGE key 1 3
#重设value[2]对应的 assd
SETRANGE key 2 assd
#获取多个keys
mget key view
#设置多个keys
mset k1 v1 k2 v2
#先get再set
getset
```
```text
#设置key的过期时间,如果存在key仍旧执行
setex key 过期时间 value
#key存在不执行,key不存在则执行
setnx key value
```
#### List
```text
#左放入多个
LPUSH goods a b c
#右放入
RPUSH goods d
#查看全部
lrange goods 0 -1
#左移除
LPOP goods
#右移除4个元素
RPOP goods 4
#获取list长度
llen goods
#从左开始删除一个元素 g
lrem goods 1 g
#截取start 0 end 1
LTRIM goods 0 1
#goods右移除,并左添加 goods1
RPOPLPUSH goods goods1
#将goods的index 0 设置为 good(该list 必须存在)
LSET goods 0 good
#将goods的 good字段前插入 ask
LINSERT goods before good ask
```
#### Set
```text
#添加元素
sadd myset hello
#查看
SMEMBERS myset
#判断value是否存在
SISMEMBER myset hi
#获取元素个数
SCARD myset
#随机获取2个元素
SRANDMEMBER myset 2
#差集
sdiff set1 set2
#交集
sinter set1 set2
#并集
sunion set1 set2
```
#### Hash
```text
#添加
hset myhash name harlod
#获取
hget myhash name
#获取所有的字段和value
HGETALL myhash
#删除name字段
HDEL myhash name
#获取长度
HLEN myhash
#判断存在
HEXISTS myhash name1
#获取全部value
HVALS myhash
#获取全部字段
HKEYS myhash
```
#### Zset
中间 value 适用排序
```text
#添加元素
zadd test 0 harlod
#获取全部
ZRANGE test 0 -1
#最小到最大排序
ZRANGEBYSCORE test -inf +inf
/
ZRANGE test -inf +inf byscore
#删除
ZREM test jiang
#获取元素个数
ZCARD test
#返回区间个数
ZCOUNT test 0 3
```
*
*[返回教程主页](https://www.monody.net/p/blog-page_3.html)*
*
评论