使用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&&mysql)一
Oct 09 PHP
MySQL中create table语句的基本语法是
Jan 15 PHP
php入门小知识
Mar 24 PHP
PHP 飞信好友免费短信API接口开源版
Jul 22 PHP
for循环连续求和、九九乘法表代码
Feb 20 PHP
保存到桌面、设为桌面且带图标的PHP代码
Nov 19 PHP
PHP 使用redis简单示例分享
Mar 05 PHP
浅谈使用PHP开发微信支付的流程
Oct 04 PHP
Yii2.0表关联查询实例分析
Jul 18 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 PHP
ThinkPHP5与单元测试PHPUnit使用详解
Feb 23 PHP
Thinkphp 框架扩展之标签库驱动原理与用法分析
Apr 23 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实现图片缩略图的方法
2016/03/29 PHP
Yii中的relations数据关联查询及统计功能用法详解
2016/07/14 PHP
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
javascript学习笔记之函数定义
2015/06/25 Javascript
jquery显示loading图片直到网页加载完成的方法
2015/06/25 Javascript
Node.js 文件夹目录结构创建实例代码
2016/07/08 Javascript
webpack配置文件和常用配置项介绍
2017/04/28 Javascript
使用nodejs爬取前程无忧前端技能排行
2017/05/06 NodeJs
Vue学习笔记进阶篇之过渡状态详解
2017/07/14 Javascript
electron demo项目npm install安装失败的解决方法
2018/02/06 Javascript
JQuery选中select组件被选中的值方法
2018/03/08 jQuery
vue结合element-ui使用示例
2019/01/24 Javascript
Nodejs实现的操作MongoDB数据库功能完整示例
2019/02/02 NodeJs
vue使用vuex实现首页导航切换不同路由的方法
2019/05/08 Javascript
vue中的v-model原理,与组件自定义v-model详解
2020/08/04 Javascript
基于vue.js仿淘宝收货地址并设置默认地址的案例分析
2020/08/20 Javascript
Python实现的检测网站挂马程序
2014/11/30 Python
Python统计文件中去重后uuid个数的方法
2015/07/30 Python
详解C++编程中一元运算符的重载
2016/01/19 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
PHP实现发送和接收JSON请求
2018/06/07 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
2018/08/05 Python
Pycharm安装并配置jupyter notebook的实现
2020/05/18 Python
Python如何读取、写入CSV数据
2020/07/28 Python
python 解决selenium 中的 .clear()方法失效问题
2020/09/01 Python
Pycharm Git 设置方法
2020/09/15 Python
python 操作excel表格的方法
2020/12/05 Python
python基于opencv实现人脸识别
2021/01/04 Python
美国在线工具商店:Acme Tools
2018/06/26 全球购物
2014年社区植树节活动方案
2014/02/28 职场文书
yy婚礼主持词
2014/03/14 职场文书
民政局副局长民主生活会个人整改措施
2014/10/04 职场文书
迎国庆横幅标语
2014/10/08 职场文书
民用住房租房协议书
2014/10/29 职场文书
2015年财务部工作总结
2015/04/10 职场文书
各种货币符号快捷输入
2022/02/17 杂记