使用PHP导出Redis数据到另一个Redis中的代码


Posted in PHP onMarch 12, 2014

从某个 Redis db 导出数据到另一个 Redis db 的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){
        echo "$count/$total\n";
    }
    $type = $from_redis->type($key);
    switch($type){
        case Redis::REDIS_STRING:
            $val = $from_redis->get($key);
            $to_redis->set($key, $val);
            break;
        case Redis::REDIS_LIST:
            $list = $from_redis->lRange($key, 0, -1);
            foreach($list as $val){
                $to_redis->rPush($key, $val);
            }
            break;
        case Redis::REDIS_HASH:
            $hash = $from_redis->hGetAll($key);
            $to_redis->hMSet($key, $hash);
            break;
        case Redis::REDIS_ZSET:
            $zset = $from_redis->zRange($key, 0, -1, true);
            foreach($zset as $val=>$score){
                $to_redis->zAdd($key, $score, $val);
            }
            break;
    }
}
function redis_init($conf){
    $redis = new Redis();
    preg_match('/^([^:]+)(:[0-9]+)?\\/(.+)?/', $conf, $ms);
    $host = $ms[1];
    $port = trim($ms[2], ':');
    $db = $ms[3];
    $redis->connect($host, $port);
    $redis->select($db);
    return $redis;
}
PHP 相关文章推荐
用PHP发电子邮件
Oct 09 PHP
如何使用PHP中的字符串函数
Nov 24 PHP
PHP实现Socket服务器的代码
Apr 03 PHP
PHP下通过系统信号量加锁方式获取递增序列ID
Sep 25 PHP
基于python发送邮件的乱码问题的解决办法
Apr 25 PHP
利用php+mcDropdown实现文件路径可在下拉框选择
Aug 07 PHP
yii框架builder、update、delete使用方法
Apr 30 PHP
PHP中使用BigMap实例
Mar 30 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
老生常谈php中传统验证与thinkphp框架(必看篇)
Jun 10 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
Feb 19 PHP
PHP新手指南
Apr 01 PHP
PHP的变量类型和作用域详解
Mar 12 #PHP
PHP四大安全策略
Mar 12 #PHP
PHP中4个加速、缓存扩展的区别和选用建议
Mar 12 #PHP
php使用websocket示例详解
Mar 12 #PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
Mar 12 #PHP
php实现快速排序的三种方法分享
Mar 12 #PHP
php二分查找二种实现示例
Mar 12 #PHP
You might like
php 操作符与控制结构
2012/03/07 PHP
yii框架builder、update、delete使用方法
2014/04/30 PHP
php递归删除目录与文件的方法
2015/01/30 PHP
php模拟服务器实现autoindex效果的方法
2015/03/10 PHP
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
2007/04/29 Javascript
javascript中万恶的function实例分析
2011/05/25 Javascript
一个简单的网站访问JS计数器 刷新1次加1次访问
2012/09/20 Javascript
Extjs NumberField后面加单位实现思路
2013/07/30 Javascript
JQuery实现鼠标移动到图片上显示边框效果
2014/01/09 Javascript
js实现的全国省市二级联动下拉选择菜单完整实例
2015/08/17 Javascript
JS实现淡蓝色简洁竖向Tab点击切换效果
2015/10/06 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
2017/07/02 Javascript
vue做网页开场视频的实例代码
2017/10/20 Javascript
VueJs 搭建Axios接口请求工具
2017/11/20 Javascript
vue + any-touch实现一个iscroll 实现拖拽和滑动动画效果
2019/04/08 Javascript
JavaScript生成一个不重复的ID的方法示例
2019/09/16 Javascript
基于JS实现table导出Excel并保留样式
2020/05/19 Javascript
介绍Python中几个常用的类方法
2015/04/08 Python
python爬虫实战之最简单的网页爬虫教程
2017/08/13 Python
python cx_Oracle的基础使用方法(连接和增删改查)
2017/11/19 Python
Python函数any()和all()的用法及区别介绍
2018/09/14 Python
windows下python安装小白入门教程
2018/09/18 Python
解决pycharm 远程调试 上传 helpers 卡住的问题
2019/06/27 Python
一个入门级python爬虫教程详解
2021/01/27 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
html5在移动端的屏幕适应问题示例探讨
2014/06/15 HTML / CSS
德国2018年度最佳在线药房:Bodfeld Apotheke
2019/11/04 全球购物
自立自强的名人事例
2014/02/10 职场文书
渡河少年教学反思
2014/02/12 职场文书
小学毕业感言300字
2014/02/19 职场文书
学习决心书范文
2014/03/11 职场文书
护士个人自我鉴定
2014/03/24 职场文书
爱情寄语大全
2014/04/09 职场文书
医德医风自我评价2015
2015/03/03 职场文书
用Python监控你的朋友都在浏览哪些网站?
2021/05/27 Python
Python中字符串对象语法分享
2022/02/24 Python