rename v22 v2OK192.168.145.60:6379> keys v*1) "v2"2) "v1"192.168.145.60:6379> get v1"4"192.168.145.60:6379> get v2"5"192.168.145.60:6379。【Cache】Redis配置以及常用命令( 五 )。" />

【Cache】Redis配置以及常用命令( 五 )


192.168.145.60:6379> keys v*1) "v22"2) "v1"192.168.145.60:6379> rename v22 v2OK192.168.145.60:6379> keys v*1) "v2"2) "v1"192.168.145.60:6379> get v1"4"192.168.145.60:6379> get v2"5"192.168.145.60:6379> rename v1 v2OK192.168.145.60:6379> get v1(nil)192.168.145.60:6379> get v2"4"
命令
命令的作用是对已有 key 进行重命名,并检测新名是否存在,如果目标 key 存在则不进行重命名 。(不覆盖)
renamenx 源key 目标key
192.168.145.60:6379> keys *192.168.145.60:6379> get teacher"zhangsan"192.168.145.60:6379> get v2"4"192.168.145.60:6379> renamenx v2 teacher(integer) 0192.168.145.60:6379> keys *192.168.145.60:6379> get teacher"zhangsan"192.168.145.60:6379> get v2"4"
命令
命令的作用是查看当前数据库中 key 的数目 。
192.168.145.60:6379> dbsize
设置/修改密码
#使用config set requirepass yourpassword命令设置密码192.168.145.60:6379> config set requirepass 123456#若不想设置密码登录可以设置为config set requirepass ''
查看密码
#使用config get requirepass命令查看密码(一旦设置密码,必须先验证通过密码,否则所有操作不可用)192.168.145.60:6379> auth 123456#指定密码192.168.145.60:6379> config get requirepass
5. Redis 多数据库常用命令
Redis 支持多数据库,Redis 默认情况下包含 16 个数据库,数据库名称是用数字 0-15 来依次命名的 。
多数据库相互独立,互不干扰 。
多数据库间切换
select 序号#使用 redis-cli 连接 Redis 数据库后,默认使用的是序号为 0 的数据库 。192.168.145.60:6379> select 10#切换至序号为 10 的数据库192.168.145.60:6379[10]> select 15#切换至序号为 15 的数据库192.168.145.60:6379[15]> select 0#切换至序号为 0 的数据库
多数据库间移动数据
move 键值 序号192.168.145.60:6379> set k1 100OK192.168.145.60:6379> get k1"100"192.168.145.60:6379> select 1OK127.0.0.1:6379[1]> get k1(nil)127.0.0.1:6379[1]> select 0#切换至目标数据库 0OK192.168.145.60:6379> get k1#查看目标数据是否存在"100"192.168.145.60:6379> move k1 1#将数据库 0 中 k1 移动到数据库 1 中(integer) 1192.168.145.60:6379> select 1#切换至目标数据库 1OK127.0.0.1:6379[1]> get k1#查看被移动数据"100"127.0.0.1:6379[1]> select 0OK192.168.145.60:6379> get k1#在数据库 0 中无法查看到 k1 的值(nil)
清除数据库内数据
FLUSHDB#清空当前数据库数据FLUSHALL#清空所有数据库的数据,慎用!
总结 1.Redis 的数据类型
(字符串)、List(列表)、Hash(散列)、Set(无序集合) 、 Set(有序集合)
2. Redis 为什么这么快
Redis是纯内存结构,数据造作都是在内存中完成的 。
采用I/O多路复用,使线程处理更多的网络连接请求,提高并发能力 。
数据读写采用的是单线程,可以减少多线程切换的消耗,同时也不用考虑锁的性能影响 。
3. Redis用法
【【Cache】Redis配置以及常用命令】redis-cli -h 地址 -p 端口 -a '密码'redis-benchmark -c -n -t -q -dset键 值get键del键type 键keys 键* ?#查询键是否存在exists 键#查询键是否存在expire键 过期秒数ttl键#-1 永不过期-2 已过期rename 旧键 新键#若新键名已存在会被覆盖renamenx 旧键 新键#若新键名已存在不会执行dbsize#查看键数select 库ID#切换数据库,库ID范围是0~15mov 键 库IDflushdb#清空当前库flushall#清空所有库config set requirepass '密码'#设置/修改密码config get requirepass#查看密码auth 密码#指定密码