Redis从文件中批量插入数据
2017-03-14 15:28
267 查看
在redis中,有时候需要批量执行某些命令,但是在redis的redis-cli下,只能一条条的执行指令,实在太麻烦了!如果能将要执行的指令一行行存储到文件中,然后用一行命令将文件中的命令一次执行完成,那简直太棒了。
我们可以看到,你输入多少条指令,就会有多少行返回记录,并且告诉你它们的执行结果,如果你导入的指令比较多,可以使用
如果你要导入数据在远程主机上,而且端口也是自定义的,那么可以使用下面的方法将文件导入到远程服务器:
创建文件
首先创建爱你一个txt文件,将要执行的命令一行一行写入。server$ vim d1.txt set myk12 v1 zadd zset12 0 a 1 b 3 c sadd sset12 e f g hh set myk22 v2 hset myset12 k1 v1 hmset myset22 k2 v2 k3 v3 k4 v4 set myk32 v3
转码
redis-cli中只支持dos格式的换行符 \r\n,如果你在Linux下、Mac下或者Windows下创建的文件,最好都转个码。没有转码的文件,执行会失败。server> unix2dos d1.txt unix2dos: converting file d1.txt to DOS format...
执行导入
文件转码完成后,就可以导入,导入使用cat和redis-cli命令组合,一个用来读取文件内容,一个用来发送文件到redis执行,如果要导入的文件和redis在同一台服务器上,可以直接将本地文件中的指令导入redis执行。server> cat d1.txt | redis-cli OK (integer) 3 (integer) 4 OK (integer) 1 OK OK
我们可以看到,你输入多少条指令,就会有多少行返回记录,并且告诉你它们的执行结果,如果你导入的指令比较多,可以使用
--pipe这个参数来启用pipe协议,它不仅仅能减少返回结果的输出,还能更快的执行指令。
server> cat d1.txt | redis-cli --pipe All data transferred. Waiting for the last reply... Last reply received from server. errors: 0, replies: 7
如果你要导入数据在远程主机上,而且端口也是自定义的,那么可以使用下面的方法将文件导入到远程服务器:
server> cat d1.txt | redis-cli -p 6380 -h 192.168.1.166 --pipe All data transferred. Waiting for the last reply... Last reply received from server. errors: 0, replies: 7
相关文章推荐
- Redis从文件中批量插入数据
- Redis从文件中批量插入数据
- 【07-Redis从文件中批量插入数据】
- Bat文件往oracle中批量插入数据
- 以CSV文件导入MySQL的批量数据插入操作之Java操作
- redis---批量插入数据
- 【批量生成10万条sql数据库数据+IO流的使用】生成简单sql插入语句大量数据,以及输出流生成文件2017年
- SQL 读取csv 文件批量插入数据
- sql Server 批量插入以及sql Server数据导入到mysql sqlServer数据每10000条导出一个文件
- REDIS从LINUX文件写入批量数据
- StackExchange.Redis 管道 批量 高性能插入数据
- mysql 批量插入数据 redis
- 笔记:读取sql文件,然后将数据批量插入数据库
- mongodb命令批量插入json文件数据
- shell批量插入redis测试数据
- 将txt文件中的数据批量插入到数据库中SqlBulkCopy
- StackExchange.Redis 管道 批量 高性能插入数据
- Mysql 快速插入批量数据,从文件中导入数据
- 在ASP.NET中,向数据库批量插入数据
- 用SQL存储过程实现批量插入数据