- [key操作命令](#key操作命令)
- [set 设置key的值](#set-设置key的值)
- [get 获取key的值](#get-获取key的值)
- [del 删除key](#del-删除key)
- [exists 判断key是否存在](#exists-判断key是否存在)
- [type 获取key类型](#type-获取key类型)
- [expire 设置key有效期](#expire-设置key有效期)
- [tll 查看key有效期](#tll-查看key有效期)
- [rename 重命名key](#rename-重命名key)
- [renamenx 重命名不存在的key](#renamenx-重命名不存在的key)
- [persist 设置key永久有效](#persist-设置key永久有效)
- [move 把key移动到其他库](#move-把key移动到其他库)
- [库操作命令](#库操作命令)
- [dbsize 查看当前有多少个key](#dbsize-查看当前有多少个key)
- [select 选择库](#select-选择库)
- [flushdb 删除选中数据库中的key](#flushdb-删除选中数据库中的key)
- [flushall 删除所有库的key](#flushall-删除所有库的key)
# key操作命令
## set 设置key的值
```bash
set key value
# 示例
127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> set age 25
OK
```
## get 获取key的值
```bash
get key
# 示例
127.0.0.1:6379> get name
"zhangsan"
```
## del 删除key
```bash
del key
# 示例
127.0.0.1:6379> del name
(integer) 1
```
## exists 判断key是否存在
```bash
exists key
# 判断key是否存在,存在返回1,不存在返回0
# 示例
127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists title
(integer) 0
```
## type 获取key类型
```bash
type key
# 获取key存储的值的类型
# 示例
127.0.0.1:6379> type name
string
127.0.0.1:6379> type age
string
```
## expire 设置key有效期
```bash
expire key
# 设置key的生命周期
# pexpire key 表示以毫秒为单位设置声明周期
# 示例
127.0.0.1:6379[1]> expire login 60
(integer) 1
127.0.0.1:6379[1]> ttl login
(integer) 47
```
## tll 查看key有效期
```bash
ttl key
# 查询key的生命周期
# 大于0 :生命周期单位为秒,
# 等于-1:永久有效
# 等于-2:该key不存在
# pttl key表示毫秒为单位
# 示例
127.0.0.1:6379> ttl name
(integer) -1
127.0.0.1:6379> ttl title
(integer) -2
```
## rename 重命名key
```bash
rename key newkey
# 重命名key,如果newkey已经存在,修改后则替换新key的值
# 示例
127.0.0.1:6379> set title "redis test"
OK
127.0.0.1:6379> exists title
(integer) 1
127.0.0.1:6379> rename title biaoti
OK
127.0.0.1:6379> get biaoti
"redis test"
```
## renamenx 重命名不存在的key
```bash
renamenx key newkey
# 重命名key,如果newkey已经存在则不修改。
# nx表示not exists
# 示例
127.0.0.1:6379> keys *
1) "biaoti"
2) "age"
3) "name"
127.0.0.1:6379> renamenx biaoti name
(integer) 0
```
## persist 设置key永久有效
```bash
persist key
# 设置key永久有效
# 示例
127.0.0.1:6379> set login on
OK
127.0.0.1:6379> expire login 60
(integer) 1
127.0.0.1:6379> ttl login
(integer) 55
127.0.0.1:6379> persist login
(integer) 1
127.0.0.1:6379> ttl login
(integer) -1
```
## move 把key移动到其他库
```bash
move key db
# 把key移动到另一个数据库,db为整数
# 示例
127.0.0.1:6379> keys *
1) "biaoti"
2) "age"
3) "name"
127.0.0.1:6379> move biaoti 1
(integer) 1
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
1) "biaoti"
```
# 库操作命令
## dbsize 查看当前有多少个key
```bash
dbsize
# 查看当前有多少个key
# 示例
127.0.0.1:6379> dbsize
12
```
## select 选择库
```bash
select db
# 选择使用哪个数据库,db为整数
# 默认有16个数据库0~15,如果想修改数据库数量,修改redis.conf配置文件的databases值
# 示例
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[2]> select 15
OK
```
## flushdb 删除选中数据库中的key
```bash
flushdb
# 删除当前选择数据库中的所有key
# 示例
127.0.0.1:6379[1]> keys *
1) "biaoti"
127.0.0.1:6379[1]> flushdb
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
```
## flushall 删除所有库的key
```bash
flushall
# 删除所有数据库中的key
# 示例
127.0.0.1:6379[1]> flushall
OK
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> keys *
(empty list or set)
```
Redis库和key操作命令