codecamp

pika根据时间戳恢复数据工具

说明

pika新版binlog有时间戳,开发binlog_sender工具,根据输入的时间段回放对应数据到某个pika实例

工具目录:

pika/tools/binlog_tools/binlog_sender

使用参数:

-h -- 显示帮助 -t -- l 显示日志类型,old 或new -i -- pika实例的ip -p -- pika实例的port -n -- 输入的binlog的路径 -f -- 要转换的binlog号 -s -- 规定的起始时间点, 默认: '2001-00-00 00:59:01' -e -- 规定的结束时间点, 默认: '2100-01-30 24:00:01'

样例:

./binlog_sender -n /data2/wangwenduo/newlog/ -t new -i 127.0.0.1 -p 10221 -s '2001-10-11 11:11:11' -e '2020-12-11 11:11:11' -f 526,527

注意:

因为依次发送binlog,过程中可能会丢部分请求。因此当使用binlog_sender回放后,不要删掉对应的文件以防丢数据

性能指标:

经测算,新binlog到pika实例 ,100m文件转换时间为分钟级,和机器及网络有关


新,旧,可读 三类binlog转换工具
Redis到pika迁移工具
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }