美文网首页
Redis(四)

Redis(四)

作者: 吃可爱长大鸭 | 来源:发表于2020-01-04 12:39 被阅读0次

第二十一章 单节点数据迁移到集群

1.安装工具

yum install libtool autoconf automake git bzip2 -y 
cd /opt/
git clone https://github.com/vipshop/redis-migrate-tool.git
cd redis-migrate-tool/
autoreconf -fvi
./configure
make && make install 

2.编写配置文件

cat > 6379_to_6380.conf << EOF
[source]
type: single
servers:
- 10.0.0.51:6379

[target]
type: redis cluster
servers:
- 10.0.0.51:6380 

[common]
listen: 0.0.0.0:8888
source_safe: true
EOF

3.单节点生成测试数据

redis-server /opt/redis_6379/conf/redis_6379.conf 
cat >input_6379.sh<<EOF 
#!/bin/bash
for i in {1..1000}
do
    redis-cli -c -h db01 -p 6379 set oldzhang_\${i} oldzhang_\${i}
    echo "set oldzhang_\${i} is ok"
done
EOF

4.运行工具迁移单节点数据到集群

redis-migrate-tool -c 6379_to_6380.conf

5.运行工具验证数据是否迁移完成

redis-migrate-tool -c 6379_to_6380.conf -C redis_check

第二十二章 RDB文件迁移到集群

1.先把集群的RDB文件都收集起来

- 在从节点上执行bgsave命令生成RDB文件
redis-cli -h db01 -p 6381 BGSAVE
redis-cli -h db02 -p 6381 BGSAVE
redis-cli -h db03 -p 6381 BGSAVE

2.把从节点生成的RDB文件拉取过来

mkdir rdb_backup
cd rdb_backup/
scp db01:/data/redis_6381/redis_6381.rdb db01_6381.rdb
scp db02:/data/redis_6381/redis_6381.rdb db02_6381.rdb
scp db03:/data/redis_6381/redis_6381.rdb db03_6381.rdb

3.清空数据

redis-cli -c -h db01 -p 6380 flushall
redis-cli -c -h db02 -p 6380 flushall
redis-cli -c -h db03 -p 6380 flushall

4.编写配置文件

cat >rdb_to_cluter.conf <<EOF
[source]
type: rdb file
servers:
- /root/rdb_backup/db01_6381.rdb 
- /root/rdb_backup/db02_6381.rdb 
- /root/rdb_backup/db03_6381.rdb 

[target]
type: redis cluster
servers:
- 10.0.0.51:6380 

[common]
listen: 0.0.0.0:8888
source_safe: true
EOF

5.使用工具导入

redis-migrate-tool -c rdb_to_cluter.conf 

第二十三章 使用工具分析key的大小

0.需求背景

redis的内存使用太大键值太多,不知道哪些键值占用的容量比较大,而且在线分析会影响性能.

1.安装命令:

yum install python-pip gcc python-devel -y
cd /opt/
git clone https://github.com/sripathikrishnan/redis-rdb-tools
cd redis-rdb-tools
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python-lzf 


mkdir ~/.pip/
cat >~/.pip/pip.conf <<EOF
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
EOF
pip install redis          #家目录下执行
python setup.py install    #/opt/redis-rdb-tools 下执行

2.生成测试数据:

redis-cli -h db01 -p 6379 set txt $(cat txt.txt)

3.执行bgsave生成rdb文件

redis-cli -h db01 -p 6379 BGSAVE

4.使用工具分析:

cd /data/redis_6379/
rdb -c memory redis_6379.rdb -f redis_6379.rdb.csv

5.过滤分析

awk -F"," '{print $4,$3}' redis_6379.rdb.csv |sort -r

6.将结果整理汇报给领导,询问开发这个key是否可以删除

第二十四章 使用工具将rdb转换成json

rdb --command json redis_6379.rdb -f redis_6379.rdb.json

第二十五章 使用工具对比rdb文件差异

cd /root/rdb_backup
rdb --command diff db01_6381.rdb | sort > dump1.txt
rdb --command diff db02_6381.rdb | sort > dump2.txt
vimdiff dump1.txt dump2.txt 

相关文章

  • redis

    Redis事务介绍(四)redis面试题

  • NoSQL二--Redis

    目录 一、Redis介绍二、安装Redis三、Redis 持久化四、Redis 的数据类型五、Redis常用操作六...

  • redis安装

    一.下载redis 二.上传到linux然后解压redis 三.安装redis 四.修改自己redis.conf配...

  • 007:环境-利用docker安装redis

    摘要: 一、安装redis 二、启动redis 三、修改配置文件 四、安装redis可视化工具redis desk...

  • Redis面试问题

    一 如何保证redis高并发 二 如何保证redis高可用 三 redis的过期策略 四 redis的线程模型 五...

  • 2022-05-26 Springboot 系列 (15) -

    Springboot+Redis(四) | 使用 spring-boot-starter-data-redis 实...

  • CENTOS7 源码安装Redis,并配置

    一:从Redis的官方网站下载Redis的源码 二:编译Redis源码 make 三:安装Redis 四:配置服务...

  • Redis基础知识详解(非原创)

    文章大纲 一、Redis介绍二、Redis安装并设置开机自动启动三、Redis文件结构四、Redis启动方式五、R...

  • Redis(四)

    第二十一章 单节点数据迁移到集群 1.安装工具 2.编写配置文件 3.单节点生成测试数据 4.运行工具迁移单节点数...

  • Ubuntu 安装Redis

    一、安装Redis 二、查看Redis是否正常运行 三、开启默认端口6379 四、进入Redis服务器 五、Red...

网友评论

      本文标题:Redis(四)

      本文链接:https://www.haomeiwen.com/subject/kzvxactx.html