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...