以下是 PHP 版本分批清理 Redis 数据库的示例代码:
<?php $redis = new Redis(); // 连接 Redis 服务器 $redis->connect('127.0.0.1', 6379); // 每次清空的数据量 $batchSize = 1000; // 当前数据库中的键数量 $keyCount = $redis->dbSize(); // 每次删除 $batchSize 个键,直到所有键都被删除 for ($i = 0; $i < $keyCount; $i += $batchSize) { $keys = $redis->scan($i, 'MATCH', '*', 'COUNT', $batchSize); if (empty($keys)) { break; } $redis->del($keys); } // 关闭 Redis 连接 $redis->close(); ?>
以上代码使用 Redis 的 SCAN
命令来获取当前数据库中的所有键,并将其分成大小为 $batchSize
的批次进行删除,直到所有键都被删除。请注意,该代码仅供参考,实际情况可能需要根据需要进行调整。
评论