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

从某个 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;
}

时间: 2024-08-03 18:44:14

使用PHP导出Redis数据到另一个Redis中的代码_php实例的相关文章

PHP导出Redis数据到另一个Redis中的方法

 这篇文章主要介绍了使用PHP导出Redis数据到另一个Redis中的方法,需要的朋友可以参考下 从某个 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('*')

Linux下将excel数据导入到mssql数据库中的方法_php实例

先清理一下思路先,~~ 首先:需要把文件上传到服务器上 然后:读取excel数据列显示出来 然后:让用户选择字段的对应关系 然后:提交数据,读取字段的对应关系 最后:批量导入数据,删除临时文件 一共是以上五步骤!我们一步步分析~~~ 第一步:下载附件中的phpexcelparser4.rar ,这个文件是上传excel盗服务器上并以web形式展示出来的!这个一般没有问题的!问题是程序的做法是把表存为临时表而没有真正保存下来,所以首先要更改程序代码为 复制代码 代码如下: if (trim($_P

同时包含数字和字符的数据怎么存到一个变量中?

问题描述 同时包含数字和字符的数据怎么存到一个变量中? 如题,比如一个数据"A1.01",我要通过sscanf将它存到一个变量中,怎么才能实现? 解决方案 可以建立个数组三 str[][5] 每次的数据占一行

请教下如何按照一定比例几个list的数据添加到一个list中,使得最终数据呈比例排列呢?

问题描述 请教下如何按照一定比例几个list的数据添加到一个list中,使得最终数据呈比例排列呢? 请教下一个算法问题,有个final Arraylist,取名为f吧,有3个a, b, c list,里面的数据分别是30, 10, 30. 现在需要按照3:2:1的比例将a, b, c list里面的数据添加到f list中去,final list里面的数据要变成aaa bb c aaa bb c ....这种按比例排列方式. a, b, c这3个list的数据,不一定同时来的.可能a数据来了,然

循环往Map里装数据,同一个KEY的数据撞到一个list中,怎么实现?急急

问题描述 循环往Map里装数据,同一个KEY的数据撞到一个list中,怎么实现?急急 Map<String, List<UserDto>> map = new HashMap<String, List<UserDto>>(); String key = ""; for (int i = 0 ;i < userErrorList.size(); i++) { key = userErrorList.get(i).getUserId()

phpExcel导出大量数据出现内存溢出错误的解决方法_php技巧

phpExcel将读取的单元格信息保存在内存中,我们可以通过 复制代码 代码如下: PHPExcel_Settings::setCacheStorageMethod() 来设置不同的缓存方式,已达到降低内存消耗的目的! 1.将单元格数据序列化后保存在内存中 复制代码 代码如下: PHPExcel_CachedObjectStorageFactory::cache_in_memory_serialized; 2.将单元格序列化后再进行Gzip压缩,然后保存在内存中 复制代码 代码如下: PHPEx

怎样把一个datagridview表中的数据存为一个数据库中的一个数据表?

问题描述 如题....在线等..... 解决方案 解决方案二:从它的数据源datatable直接循环构成insert语句即可解决方案三:SqlCommandBuilderSCB=newSqlCommandBuilder(dataAdapter1);dataAdapter1.Update(dgv1.Tables[0]);解决方案四:注意要定义变量dataAdapter1,ds1dgv要绑定ds1.Tables[0]SqlCommandBuilderSCB=newSqlCommandBuilder(

vs2010 数据的多选一-在VS2010环境下如何将excel数据导入到SQL数据库中的代码

问题描述 在VS2010环境下如何将excel数据导入到SQL数据库中的代码 类似于这种的导入方式的代码.有大神吗 解决方案 c#中高效的excel导入sqlserver的方法 http://wenku.baidu.com/link?url=swMSQLS3aD8QqkCckCokNOOsmqYphZ3nNL7Yeuq-e7K9Mz4UrLy92nGdLXV7IlUNFm9wXreVs7jAFgYtHBDbb1_TD3rOxOrxDKSr6QIDBIO

myeclipse的jsp页面中点击按钮将所填数据保存到PL/SQLdeveloper中的代码

问题描述 myeclipse的jsp页面中点击按钮将所填数据保存到PL/SQLdeveloper中的代码 myeclipse的jsp页面中点击按钮将所填数据保存到PL/SQLdeveloper中的代码 解决方案 你好,首先你是用啥框架?纯jsp?还是servlet或者ssh? 解决方案二: 我用的应该是Struts框架