tools/pika_migrate/pika-migrate.md
Pika 4.0,单机模式且只支持单db
将Pika中的数据在线迁移到Pika、Redis(支持全量、增量同步)
之前Pika项目官方提供的pika_to_redis工具仅支持离线将Pika的DB中的数据迁移到Pika、Redis, 且无法增量同步, 该工具实际上就是一个特殊的Pika, 只不过成为从库之后, 内部会将从主库获取到的数据转发给Redis,同时并支持增量同步, 实现热迁功能.
###################
## Migrate Settings
###################
target-redis-host : 127.0.0.1
target-redis-port : 6379
target-redis-user :
target-redis-pwd :
sync-batch-num : 100
redis-sender-num : 10
config set expire-logs-nums 10000, 让主库保留10000个Binlog文件(Binlog文件占用磁盘空间, 可以根据实际情况确定保留binlog的数量), 确保后续该工具请求增量同步的时候, 对应的Binlog文件还存在.target-redis-host, target-redis-port, target-redis-pwd, sync-batch-num, redis-sender-num配置项(sync-batch-num是该工具接收到主库的全量数据之后, 为了提升转发效率, 将sync-batch-num个数据一起打包发送给Redis, 此外该工具内部可以指定redis-sender-num个线程用于转发命令, 命令通过Key的哈希值被分配到不同的线程中, 所以无需担心多线程发送导致的数据错乱的问题)pika -c pika.conf命令启动该工具, 查看日志是否有报错信息slaveof ip port force向主库请求同步, 观察是否有报错信息info Replication查看主从同步延迟(可在主库写入一个特殊的Key, 然后看在Redis测是否可以立马获取到, 来判断是否数据已经基本同步完毕)