この記事では主に、PHP を使用して Redis データを別の Redis にエクスポートする方法を紹介します。必要な友人はそれを参照してください。 ある Redis データベースから別の Redis データベースにデータをエクスポートする PHP スクリプト: コードは次のとおりです。 $from = '127.0.0.1:6200/6'; $to = '127.0.0.1:6200/8'; $from_redis = redis_init($from); $to_redis = redis_init($to); $keys = $from_redis->keys('*'); $count = 0; $total = count($keys); foreach($keys as $key){ if(++$count % 100 == 1){ エコー "$count/$totaln"; } $type = $from_redis->type($key); スイッチ($type){ Redis::REDIS_STRING の場合: $val = $from_redis->get($key); $to_redis->set($key, $val); 壊す; ケース Redis::REDIS_LIST: $list = $from_redis->lRange($key, 0, -1); foreach($list as $val){ $to_redis->rPush($key, $val); } 壊す; Redis::REDIS_HASH の場合: $hash = $from_redis->hGetAll($key); $to_redis->hMSet($key, $hash); 壊す; Redis::REDIS_ZSETの場合: $zset = $from_redis->zRange($key, 0, -1, true); foreach($zset as $val=>$score){ $to_redis->zAdd($key, $score, $val); } 壊す; } } 関数 redis_init($conf){ $redis = 新しい Redis(); Preg_match('/^([^:]+)(:[0-9]+)?\/(.+)?/', $conf, $ms); $host = $ms[1]; $port = トリム($ms[2], ':'); $db = $ms[3]; $redis->connect($host, $port); $redis->select($db); $redis を返します。 }