ERR
redis
data_error
ai_generated
partial
Error: RDB checksum mismatch: expected 0xAB12CD34 but got 0x5678EF90
ID: redis/rdb-checksum-mismatch-restore
75%Fix Rate
88%Confidence
1Evidence
2023-11-20First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| 6.2.0 | active | — | — | — |
| 7.0.0 | active | — | — | — |
| 7.2.0 | active | — | — | — |
Root Cause
The RDB file on disk has been corrupted or modified after creation, causing its checksum to differ from the expected value.
generic中文
磁盘上的 RDB 文件在创建后被损坏或修改,导致其校验和与期望值不同。
Official Documentation
https://redis.io/docs/management/persistence/Workarounds
-
70% success Use redis-check-rdb to validate and attempt repair: 'redis-check-rdb /var/lib/redis/dump.rdb' then if repair is needed 'redis-check-rdb --fix /var/lib/redis/dump.rdb'
Use redis-check-rdb to validate and attempt repair: 'redis-check-rdb /var/lib/redis/dump.rdb' then if repair is needed 'redis-check-rdb --fix /var/lib/redis/dump.rdb'
-
85% success Restore from the latest valid RDB backup or promote a replica to primary if replication is configured
Restore from the latest valid RDB backup or promote a replica to primary if replication is configured
中文步骤
Use redis-check-rdb to validate and attempt repair: 'redis-check-rdb /var/lib/redis/dump.rdb' then if repair is needed 'redis-check-rdb --fix /var/lib/redis/dump.rdb'
Restore from the latest valid RDB backup or promote a replica to primary if replication is configured
Dead Ends
Common approaches that don't work:
-
Restarting Redis without fixing the RDB file
100% fail
Redis will reload the same corrupt RDB file and fail again with the same checksum error.
-
Deleting the RDB file and restarting
95% fail
This causes complete data loss unless a replica or backup is available.
-
Running redis-check-rdb with --fix on a heavily corrupted file
60% fail
The fix tool can only recover partially; if the checksum mismatch is severe, it may truncate the file and lose data.