Board logo

标题: redis常用命令收集(1) [打印本页]

作者: look_w    时间: 2019-5-18 09:13     标题: redis常用命令收集(1)

redis-cli 是 Redis 自带的命令行工具, 直接在命令行终端与 redis server 执行所有命令和返回响应。下面所有命令都可以在 cli 交互式命令行中执行。

交互式命令参数
redis-cli 命令行自带一些参数,可以使用 redis-cli --help 查看。
通常 -p 参数指定端口, -a 参数指定密码, -h 指定 hostname。
–stat 参数打印状态
Redis基础命令

ping    用于检测 redis 服务是否启动
info    查看redis信息
select    选择不同的keyspace,或者说database
keys *    查看当前keyspace下所有的key
flushdb    清空当前keyspace下的数据
flushall    清空所有的keyspace下的数据
dbsize    查看当前keyspace下的一个键值对数量
save    持久化redis中存储的数据到磁盘中
quit    退出客户端命令行
select dbIndex 默认16个数据库:0-15,进入redis后默认是0库。不建议使用多个数据库



Redis键命令

del key    该命令用于在 key 存在时删除 key
dump key    序列化给定 key ,并返回被序列化的值
exists key    检查给定 key 是否存在,存在返回1,不存在返回0
expire key seconds    为给定 key 设置过期时间
expireat key timestamp    EXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置过期时间。 不同在于 EXPIREAT 命令接受的时间参数是 UNIX 时间戳(unix timestamp)
pexpire key milliseconds    设置 key 的过期时间以毫秒计
pexpireat key milliseconds-timestamp    设置 key 过期时间的时间戳(unix timestamp) 以毫秒计
keys pattern    查找所有符合给定模式( pattern)的 key
move key db    将当前数据库的 key 移动到给定的数据库 db 或者说 keyspace 当中
persist key    移除 key 的过期时间,key 将持久保持
pttl key    以毫秒为单位返回 key 的剩余的过期时间,-1表示没有过期时间,-2表示该key不存在
ttl key    以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live),-1表示没有过期时间,-2表示该key不存在
randomkey    从当前数据库中随机返回一个 key
rename key newkey    修改 key 的名称
renamenx key newkey    仅当 newkey 不存在时,将 key 改名为 newkey
type key    返回 key 所储存的值的类型

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16

迁移键

方式一
move key db 迁移键-(不建议再生产环境中使用)把指定的键从源数据库移动到目标数据库
方式二
dump+restore
dump key
Restore key ttl value
Dump+restore可以实现在不同的redis实例之间进行数据迁移的功能,整个迁移的过程分为两步;
1)在源redis上,dump命令会将键值序列化,格式采用的是RDB格式
2)在目标redis上,restore命令将上面序列化的值进行复原,其中ttl参数代表过期时间,ttl=0代表没有过期时间
例子:
源redis
192.168.225.129:6379> get redis
"world"
192.168.225.129:6379> dump redis
"\x00\x05world\a\x00\xe6\xe3\xe9w\xd8c\xa7\xd8"
目标redis
192.168.225.128:6379> get redis
(nil)
192.168.225.128:6379> restore redis 0 "\x00\x05world\a\x00\xe6\xe3\xe9w\xd8c\xa7\xd8"
OK
192.168.225.128:6379> get redis
"world"
方式三
migrate
migrate实际上是吧dump、restore、del 3个命令进行组合,从而简化了操作步骤。
Migrate host port key [ key ......] destination-db timeout [replace]
源redis中执行
192.168.225.129:6379> migrate 192.168.225.128 6379 flower 0 1000 replace
(将键flower迁移至目标192.168.225.128:6379的库0中,超时时间为1000毫秒,replace表示目标库如果存在键flower,




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0