php实现mysql 数据迁移_php实现redis数据库指定库号迁移的方法
本文实例讲述了php实现redis数据库指定库号迁移的方法,分享给大家供大家参考。具体如下:
redis普通的数据库迁移,只能整个redis save,或者利用主从,当然也可以安装一个redis-dump,不过比较麻烦,这里提供一种php的脚本,实现指定库号的迁移,其实也就是遍历根据存储类型,读出来,插入新库,效果是这样:
[root@localhost ~]# php 1.php
1/407
101/407
201/407
301/407
401/407
PHP实例代码如下:
$from = '10.0.2.52:6379/7';
$to = '127.0.0.1:6379/7';
$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 数据迁移_php实现redis数据库指定库号迁移的方法相关推荐
- mysql建立数据浏览器_一个简单的MySQL数据浏览器_php
这个程序可以用来浏览mysql中的数据,您可以稍做修改就可以做出很不错的MySQL浏览器. */ /* ?cmd=db ?cmd=table&db={} http://www.gaodaima ...
- EF Core 小技巧:迁移已经应用到数据库,如何进行迁移回退操作?
场景描述:项目中存在两个迁移 Teacher 和 TeachingPlan ,TeachingPlan 在 Teacher 之后创建,并且已经执行 dotnet ef database update ...
- chackbox的值 php获取_PHP操作Redis数据库常用方法
IT生涯 2019-11-26 20:42:23 要让php能用上redis,首先就得安装redis扩展.1.安装redis git下载地址 https://github.com/MSOpenTech ...
- php mysql刷新表格_PHP和AJAMYSQL数据库刷新表格
好文网为大家准备了关于PHP和AJAMYSQL数据库刷新表格的文章,好文网里面收集了五十多篇关于好PHP和AJAMYSQL数据库刷新表格好文,希望可以帮助大家.更多关于PHP和AJAMYSQL数据库刷 ...
- python获取redis数据_Python之操作redis数据库
使用redis模块 一.操作redis 1.添加信息 (1)直接建key-value信息: 右键-Add New Key,手动添加key和value 右键-Console,打开控制台,写入命令 (2) ...
- 链接redis清空指定库数据
redis-cli -h host -p port -a password 连接redis 如果提示Redis (error) NOAUTH Authentication required说明redi ...
- mysql数据库函数转义函数_MySql数据库-查询、插入数据时转义函数的使用
最近在看一部php的基础视频教程,在做案例的时,当通过用户名查询用户信息的时候,先使用了转义函数对客户提交的内容进行过滤之后再交给sql语句进行后续的操作.虽然能看到转义函数本身的作用,但是仍然有一些 ...
- mysql数据表怎么截图_access数据库怎样截图
<R语言数据分析>--1.4 从数据库中导入数据 本节书摘来自华章出版社<R语言数据分析>一书中的第1章,第1.4节,作者盖尔盖伊·道罗齐(Gergely Daróczi),潘 ...
- Java连接redis选择指定库操作
redis建立好通常会有15个库,从db0-db15,但是Java操作redis的时候,需要通过jedis连接,默认连接的是db0号库,如果需要往其他号库进行操作,执行以下操作就可以啦. 以maven ...
最新文章
- 来认识世界上第一支AI基金:模仿股票分析师 365天无间断工作
- 第二章:深入C#数据类型
- C++11 新特性之std::thread
- python输出二进制数_二进制中1的个数(python)
- Graphpad Prism作相关性分析图
- 【PAT甲级 vector string排序】1047 Student List for Course (25 分) 含别人的做法
- 72 include动作和指令的区别
- java.net.url 中文乱码_jsp get Url请求方式中文乱码问题解决办法
- 2012 php mysql_Apache+Mysql+PHP(win sercer2012)
- javaweb项目自动设置热加载
- 目录-换热器及其计算基础知识
- Qt中配置OpenCV
- 大一java实训报告1500字_java实训报告两篇
- w7计算机不显示移动硬盘,Win7移动硬盘在电脑上不显示盘符的解决办法
- div和span标签以及标签分类
- html5四季特点,成都气候:成都温度、成都天气、成都常年气温、成都四季特点,chengdu weather...
- 一个简单的HTML网页
- java maven 编辑器,Maven compiler 插件
- 设计模式—单例模式(饿汉式、懒汉式)
- 成为一个大数据大牛需要掌握的知识树
热门文章
- 开源大数据平台的安全实践
- 作者:​王宁(1979-),男,厦门华厦学院副教授、高级工程师。
- 作者:朱扬勇(1963-),男,博士,复旦大学计算机科学技术学院教授、学术委员会主任,上海市数据科学重点实验室主任。...
- 作者:卢祥虎,男,北京金信网银金融信息服务有限公司机器学习算法工程师。...
- 不连续字符的串计数(洛谷P4439题题解,Java语言描述)
- 用项目案例彻底理解Spring IOC容器
- boost一些常用库(数据结构,迭代器,算法及字符串) 简单介绍
- scrum 开发方式学习笔记
- macOS的控制台Console.app
- Jenkins Pipline语法