84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
我redis里配置了db0、db1、db2、db3四个库,我想看每个库分别占用的大小应该怎么办? 另外jedis里有什么方法可以用吗?
走同样的路,发现不同的人生
Redis는 각 db의 실제 점유를 얻는 신뢰할 수 있는 방법을 제공하지 않는 것 같습니다. 이는 주로 redis 자체에 db 파일 개념이 없고 모든 db가 하나의 rdb 파일에 혼합되어 있기 때문입니다.
DB 크기를 추정하려면 keys *을 통해 DB의 모든 키를 순회한 다음 debug object <key>를 사용하여 키의 메모리 공간을 가져와야 합니다. serializedlength은 필드의 길이입니다. 기억을 점유하고 있습니다.
keys *
debug object <key>
serializedlength
RDB 형식 문서에 따르면 각 키의 실제 점유는 다음과 같을 것으로 추정할 수 있습니다.
그러나 이 추정치는 redis가 키를 압축할 수 있고 추정값이 너무 클 수 있기 때문에 매우 신뢰할 수 없습니다.
다음 명령은 db0(키 수)의 크기 등을 확인할 수 있습니다.
db0
또는 info keyspace을 사용하여 모든 DB 정보를 동시에 얻을 수 있습니다.
info keyspace
Redis는 각 db의 실제 점유를 얻는 신뢰할 수 있는 방법을 제공하지 않는 것 같습니다. 이는 주로 redis 자체에 db 파일 개념이 없고 모든 db가 하나의 rdb 파일에 혼합되어 있기 때문입니다.
DB 크기를 추정하려면
keys *
을 통해 DB의 모든 키를 순회한 다음debug object <key>
를 사용하여 키의 메모리 공간을 가져와야 합니다.serializedlength
은 필드의 길이입니다. 기억을 점유하고 있습니다.RDB 형식 문서에 따르면 각 키의 실제 점유는 다음과 같을 것으로 추정할 수 있습니다.
으아아아그러나 이 추정치는 redis가 키를 압축할 수 있고 추정값이 너무 클 수 있기 때문에 매우 신뢰할 수 없습니다.
다음 명령은
으아아아db0
(키 수)의 크기 등을 확인할 수 있습니다.또는
info keyspace
을 사용하여 모든 DB 정보를 동시에 얻을 수 있습니다.