国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php實現redis數據庫指定庫號遷移

2024-05-04 21:49:03
字體:
來源:轉載
供稿:網友

下面來一個朋友寫的php實現redis數據庫指定庫號遷移,希望例子能給各位帶來幫助.

redis普通的數據庫遷移,只能整個redis save,或者利用主從,當然也可以安裝一個redis-dump,不過比較麻煩,這里提供一種php的腳本,實現指定庫號的遷移,其實也就是遍歷根據存儲類型,讀出來,插入新庫,效果是這樣:

  1. [root@localhost ~]# php 1.php 
  2. 1/407 
  3. 101/407 
  4. 201/407 
  5. 301/407 
  6. 401/407 

PHP實例代碼如下:

  1. <?php 
  2. $from = '10.0.2.52:6379/7'
  3. $to   = '127.0.0.1:6379/7'
  4. $from_redis = redis_init($from); 
  5. $to_redis   = redis_init($to); 
  6. $keys  = $from_redis->keys('*'); 
  7. $count = 0; 
  8. $total = count($keys); 
  9. foreach($keys as $key){ 
  10.     if(++$count % 100 == 1){ 
  11.         echo "$count/$total\n"
  12.     } 
  13.     $type = $from_redis->type($key); 
  14.     switch($type){ 
  15.         case Redis::REDIS_STRING: 
  16.             $val = $from_redis->get($key); 
  17.             $to_redis->set($key$val); 
  18.             break
  19.         case Redis::REDIS_LIST: 
  20.             $list = $from_redis->lRange($key, 0, -1); 
  21.             foreach($list as $val){ 
  22.                 $to_redis->rPush($key$val); 
  23.             } 
  24.             break
  25.         case Redis::REDIS_HASH: 
  26.             $hash = $from_redis->hGetAll($key); 
  27.             $to_redis->hMSet($key$hash); 
  28.             break
  29.         case Redis::REDIS_ZSET: 
  30.             $zset = $from_redis->zRange($key, 0, -1, true); 
  31.             foreach($zset as $val=>$score){ 
  32.                 $to_redis->zAdd($key$score$val); 
  33.             } 
  34.             break
  35.     } 
  36. function redis_init($conf){ 
  37. //開源代碼Vevb.com 
  38.     $redis = new Redis(); 
  39.     preg_match('/^([^:]+)(:[0-9]+)?\\/(.+)?/'$conf$ms); 
  40.     $host = $ms[1]; 
  41.     $port = trim($ms[2], ':'); 
  42.     $db = $ms[3]; 
  43.     $redis->connect($host$port); 
  44.     $redis->select($db); 
  45.     return $redis
  46. ?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 承德县| 嘉义县| 和顺县| 阜新市| 于田县| 偃师市| 陇川县| 石景山区| 祁连县| 西乌珠穆沁旗| 新龙县| 青海省| 壶关县| 天镇县| 保定市| 陇川县| 全南县| 龙井市| 开原市| 垣曲县| 桂阳县| 千阳县| 济阳县| 敖汉旗| 永城市| 治县。| 湟中县| 林芝县| 宣汉县| 个旧市| 老河口市| 天柱县| 永兴县| 阜宁县| 静乐县| 福贡县| 吉木乃县| 天镇县| 东乡县| 盈江县| 阿合奇县|