c向文件中插入数据_Redis从文件中批量插入数据
簡介
在redis中,有時候需要批量執(zhí)行某些命令,但是在redis的redis-cli下,只能一條條的執(zhí)行指令,實在太麻煩了!
想到這,你是不是藍瘦香菇? 如果能將要執(zhí)行的指令一行行存儲到文件中,然后用一行命令將文件中的命令一次執(zhí)行完成,那肯定爽死了!
所以下面,我要帶你冒著手指懷孕的危險,讓你爽一把:
創(chuàng)建文件
首先創(chuàng)建一個txt文件,將要執(zhí)行的指令一行一行寫進去,當然,你也可以從其他文件拷貝進來。
server$ vim d1.txt set myk12 v1zadd zset12 0 a 1 b 3 csadd sset12 e f g hhset myk22 v2hset myset12 k1 v1hmset myset22 k2 v2 k3 v3 k4 v4set myk32 v3轉(zhuǎn)碼
redis-cli中只支持dos格式的換行符 ,如果你在Linux下、Mac下或者Windows下創(chuàng)建的文件,最好都轉(zhuǎn)個碼。沒有轉(zhuǎn)碼的文件,執(zhí)行會失敗。
下面是轉(zhuǎn)碼指令, 只需要在命令后加入要轉(zhuǎn)碼的文件即可:
如果使用unix2dos這個命令進行轉(zhuǎn)碼失敗,提示沒有這個命令,就需要進行安裝,我在在mac下用brew install unix2dos 安裝的unix2dos轉(zhuǎn)碼工具
brew install unix2dos==> Auto-updated Homebrew!Updated 1 tap (homebrew/core).... 部分省略 ...==> Pouring dos2unix-7.3.4.sierra.bottle.tar.gz/usr/local/Cellar/dos2unix/7.3.4: 23 files, 344.3K如果是CentOS,使用yum install unix2dos安裝unix2dos轉(zhuǎn)碼工具。
yum install unix2dos已加載插件:fastestmirror, security... 部分省略 ...已安裝: unix2dos.x86_64 0:2.2-35.el6完畢!執(zhí)行導入
文件轉(zhuǎn)碼完成后,就可以導入,導入使用cat和redis-cli命令組合,一個用來讀取文件內(nèi)容,一個用來發(fā)送文件到redis執(zhí)行,如果要導入的文件和redis在同一臺服務器上,可以直接將本地文件中的指令導入redis執(zhí)行
server> cat d1.txt | redis-cli OK(integer) 3(integer) 4OK(integer) 1OKOK我們可以看到,你輸入多少條指令,就會有多少行返回記錄,并且告訴你它們的執(zhí)行結(jié)果,如果你導入的指令比較多,可以使用--pipe 這個參數(shù)來啟用pipe協(xié)議,它不僅僅能減少返回結(jié)果的輸出,還能更快的執(zhí)行指令。
server> cat d1.txt | redis-cli --pipeAll data transferred. Waiting for the last reply... Last reply received from server. errors: 0, replies: 7如果你要導入數(shù)據(jù)在遠程主機上,而且端口也是自定義的,那么可以使用下面的方法將文件導入到遠程服務器:
server> cat d1.txt | redis-cli -p 6380 -h 192.168.1.166 --pipeAll data transferred. Waiting for the last reply... Last reply received from server. errors: 0, replies: 7數(shù)據(jù)導入完成后,我們就應該去redis看看是不是導入成功了:
server$ redis-cli -p 6380127.0.0.1:6380> get myk1"v1"127.0.0.1:6380> hgetall myset11) "k1"2) "v1"127.0.0.1:6380> hgetall myset21) "k2"2) "v2"3) "k3"4) "v3"5) "k4"6) "v4"是不是很爽,以后redis中有什么數(shù)據(jù)要處理,直接一行命令搞定!
總結(jié)
以上是生活随笔為你收集整理的c向文件中插入数据_Redis从文件中批量插入数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 儿歌多多怎么关闭推送广告
- 下一篇: 穿越火线枪战王者怎么改名