shell匯出和匯入redis

2021-09-20 19:52:20 字數 1131 閱讀 1673

1、匯出redis

[plain]view plain

copy

#!/bin/bash  

redis_host=localhost  

redis_port=6379  

redis_db=1  

keyname=redis:hash:*  

keyfile=key.txt  

echo "keys $keyname" | redis-cli -h $redis_host -p $redis_port -n $redis_db > $keyfile  

outfile=valuelist.txt  

tempfile=$outfile.tmp  

echo > $tempfile  

for key in `cat $keyfile`  

do  

echo $key  

#echo "hgetall $key" | redis-cli -h $redis_host -p $redis_port -n $redis_db >> $tempfile    

echo "get $key" | redis-cli -h $redis_host -p $redis_port -n $redis_db >> $tempfile  

done  

2、整理匯出的結果

[plain]view plain

copy

cat $tempfile|xargs -n 2|awk -f" " -v keyname=$keyname '' > $outfile  

其中的xargs -n 2是把2行合成一行,換行符用空格代替

然後用awk按空格分開,$1是keynam $2是key的值

再次轉換成hset的格式,其中用到keyname變數,這個要用-v預先定義。

最後轉化為 hset keyname key "value"格式。

3、匯入轉換的結果

[plain]view plain

copy

cat $outfile | redis-cli -h localhost -p 6379  

Redis資料匯入和匯出

1 安裝2.5版本ruby 解除安裝ruby yum remove ruby wget 解壓 tar zxvf ruby 2.5.0.tar.gz 進入目錄 cd ruby 2.5.0 建立安裝目錄 mkdir p usr local ruby 配置並制定安裝位置 configure prefix ...

redis 匯出 匯入 詳解

redis的備份和還原,借助了第三方的工具,redis dump 1,安裝redis dump 檢視複製列印?root localhost tank yum install ruby rubygems ruby devel 安裝rubygems 以及相關包 root localhost tank g...

redis 匯出 匯入 詳解

1,安裝redis dump 檢視 複製列印?root localhost tank yum install ruby rubygems ruby devel 安裝rubygems 以及相關包 root localhost tank gem sources a 源,加入 外面的源不能訪問 added...