1.访问redis根目录 cd /usr/local/redis-2.8.19
2.登录redis:redis-cli -h 127.0.0.1 -p 6379
3.查看所有key值:keys *
4.删除指定索引的值:del key
5.清空整个 Redis 服务器的数据:flushall
6.清空当前库中的所有 key:flushdb
如何登录
1、查看apollo配置知道需要登录的主机和ip;
2、ssh oper@30.102.240.22
3、dssh padba@redis所在的主机
4、su – redis pass1234
5、dbs显示所有的db实例
6、redis-cli -p 5417(端口) -a paic1234(密码)
7、keys *
8、type key 看key值是什么类型的数据 hash
9、hgetall key 得到key对应的value值
Redis命令:
1、Redis Keys 命令用于查找所有符合给定模式 pattern 的 key。
keys * 获取所有的key
type key 获取类型
get key --hash
WRONGTYPE Operation against a key holding the wrong kind of value
在Redis中每个键都属于一个明确的数据类型,如通过hset命令创建的键是散列类型,通过set命令建立的键是字符串类型等。使用一种数据类型的命令操作另一种数据类型的键会提示错误。当前程序中key的操作类型,并不与redis库中存在的key的类型相匹配。
使用postman进行测试,然后查一下redis在哪里。
目前登录的几台redis主机都没有办法查找到相应的session信息,需要重新登录,重新存储新的session信息才行。
配置问题
一个redis-cluster有很多redis节点,这些节点都属于同一个redis-cluster集群。比如在poc和sit上都配置了很多redis节点,这些节点属于不同的主机和端口,eg:‘100.71.192.226:5419、100.71.192.225:5417、100.71.192.226:5419、100.71.192.225:5417、100.71.192.226:5419’,但是他们都属于同一个redis集群。
在进行登录的时候,session的信息只会随机的存储在redis cluster中的一个节点上,不会同时存储多份。所以会出现多个实例的登录信息分散在不同的redis节点上。
但是在进行session查找的时候,会轮询整个redis-cluster中所有节点的信息。保证虽然session存在不同的redis节点中,但是还是可以正常的登录验证。
所以不同的服务之间只要配置连的redis集群是一样的,按理说就不会出现session没有共享的问题,总不能是redis集群的问题吧。