Rocky9 上安装 redis-dump 和redis-load 命令

一、安装依赖环境
1、依赖包
dnf -y install perl gcc gcc-c++ zlib-devel
2、编译openssl 1.X
### 下载编译
wget https://www.openssl.org/source/openssl-1.1.1t.tar.gz
tar xf openssl-1.1.1t.tar.gz
cd openssl-1.1.1t 
 ./config --prefix=/usr/local/openssl
make
make install

### 配置库文件
echo "/usr/lib64" >> /etc/ld.so.conf && ldconfig
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf && ldconfig

### 添加至系统环境变量
echo "export PATH=/usr/local/openssl/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc
二、安装ruby
### 下载编译(https://www.ruby-lang.org/en/downloads/)
wget https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.5.tar.gz     #国外网站下载比较慢,可能连接不上
tar -zxvf ruby-3.0.5.tar.gz
cd ruby-3.0.5
./configure --prefix=/usr/local/ruby
make
make install

### 添加系统环境变量
echo "export PATH=/usr/local/openssl/bin:/usr/local/ruby/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc

### 使用gem命令 有时会出现OpenSSL is not available. Install OpenSSL and rebuild Ruby (preferred) or use non-HTTPS sources错误
cd ruby-3.0.5/ext/openssl    #源码目录
ruby extconf.rb --with-openssl-dir=/usr/local/openssl
make
make install
三、更新gem源
gem sources --add http://mirrors.tuna.tsinghua.edu.cn/rubygems/ --remove https://rubygems.org/
四、安装redis-dump和redis-load命令
gem install redis-dump -V

### 检查
redis-dump -h
redis-load -h

在这里插入图片描述

五、命令的使用

1、redis-dump导出数据

# 没有密码的导出命令,-u 表示 uri
[root@localhost ~]# redis-dump -u 127.0.0.1:6379 > data.json

# 导出指定数据库数据          
[root@localhost ~]# redis-dump -u 127.0.0.1:6379 -d 1 > data.json

# redis设有密码的导出命令      
[root@localhost ~]# redis-dump -u :password@127.0.0.1:6379 > data.json 

2、redis-load导入数据

# 导入命令
[root@localhost ~]# cat data.json | redis-load -u 127.0.0.1:6379

# redis设有密码
[root@localhost ~]# cat data.json | redis-load --uri=redis://127.0.0.1:6379 --password=yeemiao123
[root@localhost ~]# cat data.json | redis-load -u :password@127.0.0.1:6379  

## 或者用 < 导入
[root@localhost ~]#  < data.json redis-load -u 127.0.0.1:6379 
[root@localhost ~]#  < data.json redis-load -u :password@127.0.0.1:6379

[root@localhost ~]#  < data.json redis-load -n -u 127.0.0.1:6379     # -n 参数是 不检查 utf-8格式