sql >> Databasteknik >  >> NoSQL >> Redis

Hur använder man Redis massinsättning?

Här är den:

echo -n '*3\r\n$3\r\nset\r\n$3\r\nkey\r\n$5\r\nvalue\r\n' | ./redis-cli --pipe
All data transferred. Waiting for the last reply...
Last reply received from server.
errors: 0, replies: 1

Ditt problem kommer förmodligen från cr+lf-separatorerna. Du kan använda kommandot hexdump -C för att kontrollera denna punkt:

echo -n '*3\r\n$3\r\nset\r\n$3\r\nkey\r\n$5\r\nvalue\r\n' | hexdump -C
00000000  2a 33 0d 0a 24 33 0d 0a  73 65 74 0d 0a 24 33 0d  |*3..$3..set..$3.|
00000010  0a 6b 65 79 0a 0d 24 35  0d 0a 76 61 6c 75 65 0d  |.key..$5..value.|
00000020  0a                                                |.|
00000021

Du kanske också vill kontrollera att ditt mål är en ny Redis-instans och inte en pre-1-2 version (som inte stöder det "enhetliga protokollet").

Obs! raderna ovan fungerar bra med zsh. Om du använder bash måste du lägga till en $ före citatet för att utlösa ANSI-C-citat:

echo -n $'*3\r\n$3\r\nset\r\n$3\r\nkey\r\n$5\r\nvalue\r\n' | hexdump -C


  1. ServiceStack.Net Redis:Lagring av relaterade objekt vs. relaterade objekt-ID

  2. MongoDB $isoWeek

  3. Hur man använder kommandot UNSUBSCRIBE i Redis 2.6.11

  4. Jämförelse av memcache, redis och ehcache som distribuerat cachingramverk