>  Q&A  >  본문

redis分好库之后怎么才能看每个库的大小呢?

我redis里配置了db0、db1、db2、db3四个库,我想看每个库分别占用的大小应该怎么办?
另外jedis里有什么方法可以用吗?

怪我咯怪我咯2760일 전677

모든 응답(1)나는 대답할 것이다

  • PHPz

    PHPz2017-04-21 11:19:09

    Redis는 각 db의 실제 점유를 얻는 신뢰할 수 있는 방법을 제공하지 않는 것 같습니다. 이는 주로 redis 자체에 db 파일 개념이 없고 모든 db가 하나의 rdb 파일에 혼합되어 있기 때문입니다.

    DB 크기를 추정하려면 keys *을 통해 DB의 모든 키를 순회한 다음 debug object <key>를 사용하여 키의 메모리 공간을 가져와야 합니다. serializedlength은 필드의 길이입니다. 기억을 점유하고 있습니다.

    RDB 형식 문서에 따르면 각 키의 실제 점유는 다음과 같을 것으로 추정할 수 있습니다.

    으아아아

    그러나 이 추정치는 redis가 키를 압축할 수 있고 추정값이 너무 클 수 있기 때문에 매우 신뢰할 수 없습니다.


    다음 명령은 db0(키 수)의 크기 등을 확인할 수 있습니다.

    으아아아

    또는 info keyspace을 사용하여 모든 DB 정보를 동시에 얻을 수 있습니다.

    회신하다
    0
  • 취소회신하다