redis string operation
1.redis string type
String string type, commonly used for plain text
List list type, which is often used in a warehouse to delete a data after it is taken away
hash type, which is commonly used to import mysql data into redis
Set set type, which is used to compare different sets
2. Common redis instructions
Keys * / / list all keys. Do not use them in the production environment. It is likely that using keys will fill the server memory, causing redis to hang up, because the production environment has tens of thousands of keys
type key / / check the type of key
del key / / deletes a key
flushdb / / clear cache
3.redis string type operation
3.1. String type common instructions
command | meaning | usage |
---|---|---|
set | Set a key | set key value |
get | View a key | get key value |
mset | Set multiple key s | mset key1 value1 key2 value2 |
mget | View multiple key s | mget key1 key2 |
incr | Increment the value of an integer by one by default | incr key |
incrby | Customize the value of an integer to increase the value | incrby key added value |
decr | Reduce the value of an integer by 1 by default | decr key |
decrby | The value of an integer is user-defined | decr key reduced value |
del | Delete a key | del key |
exists | Check whether a key exists | exists key |
ttl | View the lifecycle of a key | ttl key |
expire | Set the life cycle of the key | expire key life cycle duration |
persist | Set the life cycle of the key to never expire | persist key |
3.2. Create a key and view it
Syntax: set key name value value
It can be created either interactively or on the command line
1.Create an interactive key [root@redis-1 ~]# redis-cli 127.0.0.1:6379> set k1 v1 OK 2.Create a command line key [root@redis-1 ~]# redis-cli set k2 v2 OK 3.In interactive view key content [root@redis-1 ~]# redis-cli 127.0.0.1:6379> get k1 "v1" 4.View on the command line key content [root@redis-1 ~]# redis-cli get k2 "v2"
3.3. Read the value from the file and create the key
redis supports that the content of value is Chinese. Prepare a Chinese file and read the file value when creating a key
After Chinese files are stored in redis, they are only displayed as garbled code. In fact, they are still in Chinese. You can export them to files to view Chinese, or add – raw to solve the problem of garbled code display
1.Prepare a Chinese file [root@redis-1 ~]# cat > test.txt <<EOF > When you can study, you study; When you can do something, you do it; When you can fall in love, you fall in love again; When you can get married, you can get married again. When the environment does not permit, it cannot be forced; When the time comes, don't give up. This is one's life philosophy. > EOF 2.Create a key Read from file value [root@redis-1 ~]# redis-cli set test `cat test.txt` OK 3.see key Content of,You'll find it's garbled [root@redis-1 ~]# redis-cli get test "\xe5\xbd\x93\xe4\xbd\xa0\xe8\x83\xbd\xe5\xbf\xb5\xe4\xb9\xa6\xe6\x97\xb6\xef\xbc\x8c\xe4\xbd\xa0\xe5\xbf\xb5\xe4\xb9\xa6\xe5\xb0\xb1\xe6\x98\xaf\xef\xbc\x9b\xe5\xbd\x93\xe4\xbd\xa0\xe8\x83\xbd\xe5\x81\x9a\xe4\xba\x8b\xe6\x97\xb6\xef\xbc\x8c\xe4\xbd\xa0\xe5\x81\x9a\xe4\xba\x8b\xe5\xb0\xb1\xe6\x98\xaf\xef\xbc\x9b\xe5\xbd\x93\xe4\xbd\xa0\xe8\x83\xbd\xe6\x81\x8b\xe7\x88\xb1\xe6\x97\xb6\xef\xbc\x8c\xe4\xbd\xa0\xe5\x86\x8d\xe5\x8e\xbb\xe6\x81\x8b\xe7\x88\xb1\xef\xbc\x9b\xe5\xbd\x93\xe4\xbd\xa0\xe8\x83\xbd\xe7\xbb\x93\xe5\xa9\x9a\xe6\x97\xb6\xef\xbc\x8c\xe4\xbd\xa0\xe5\x86\x8d\xe5\x8e\xbb\xe7\xbb\x93\xe5\xa9\x9a\xe3\x80\x82\xe7\x8e\xaf\xe5\xa2\x83\xe4\xb8\x8d\xe8\xae\xb8\xe5\x8f\xaf\xe6\x97\xb6\xef\xbc\x8c\xe5\xbc\xba\xe6\xb1\x82\xe4\xb8\x8d\xe6\x9d\xa5\xef\xbc\x9b\xe6\x97\xb6\xe6\x9c\xba\xe6\x9d\xa5\xe4\xb8\xb4\xe6\x97\xb6\xef\xbc\x8c\xe6\x94\xbe\xe5\xbc\x83\xe4\xb8\x8d\xe5\xbe\x97\xe3\x80\x82\xe8\xbf\x99\xe4\xbe\xbf\xe6\x98\xaf\xe4\xb8\x80\xe4\xb8\xaa\xe4\xba\xba\xe5\xba\x94\xe6\x9c\x89\xe7\x9a\x84\xe7\x94\x9f\xe6\xb4\xbb\xe5\x93\xb2\xe5\xad\xa6\xe4\xba\x86\xe3\x80\x82" 4.take key When exporting to a file, you will find that it is Chinese output [root@redis-1 ~]# cat test2.txt When you can study, you study; When you can do something, you do it; When you can fall in love, you fall in love again; When you can get married, you can get married again. When the environment does not permit, it cannot be forced; When the time comes, don't give up. This is one's life philosophy. 5.solve redis Display Chinese garbled code [root@redis-1 ~]# redis-cli --raw get test When you can study, you study; When you can do something, you do it; When you can fall in love, you fall in love again; When you can get married, you can get married again. When the environment does not permit, it cannot be forced; When the time comes, don't give up. This is one's life philosophy.
3.4. Increment the value of an integer
redis supports increasing and decreasing the value of some integers, provided that the value value must be an integer
Integer increment enables the INCR command to be used. INCR is incremented by 1 each time, and INCRBY can be increased according to its own needs
1.Create an integer key,Increase 100 to 103 [root@redis-1 ~]# redis-cli 127.0.0.1:6379> set num1 100 OK 127.0.0.1:6379> INCR num1 (integer) 101 127.0.0.1:6379> INCR num1 (integer) 102 127.0.0.1:6379> INCR num1 (integer) 103 127.0.0.1:6379> get num1 "103" 2.use INCRBY Custom added value, add 103 to 113 [root@redis-1 ~]# redis-cli 127.0.0.1:6379> get num1 "103 127.0.0.1:6379> INCRBY num1 10 (integer) 113 127.0.0.1:6379> get num1 "113"
3.5. Devalue the Value of an integer
DECR decrements by 1 each time, and DECRER can customize the value of each decrement
1.use DECR Minus 1 each time [root@redis-1 ~]# redis-cli 127.0.0.1:6379> get num1 "113" 127.0.0.1:6379> DECR num1 (integer) 112 127.0.0.1:6379> DECR num1 (integer) 111 2.use DECR Minus 10 each time [root@redis-1 ~]# redis-cli 127.0.0.1:6379> get num1 "111" 127.0.0.1:6379> DECRBY num1 11 (integer) 100 127.0.0.1:6379> get num1 "100"
3.6. View key type
127.0.0.1:6379> type k1 //Type is string string 127.0.0.1:6379> type num1 //Even if the value is an integer, it belongs to string because it is a key created by set string Command line view [root@redis-1 ~]# redis-cli type k1 string
3.7. Create multiple key s using mset
Syntax format: mset key1 value2 key2 value2
127.0.0.1:6379> MSET k3 v3 k4 v4 k5 v5 k6 v6 OK 127.0.0.1:6379> keys * 1) "test" 2) "k2" 3) "k4" 4) "num1" 5) "k1" 6) "num" 7) "k5" 8) "k3" 9) "k6" Create on the command line [root@redis-1 ~]# redis-cli MSET k3 v3 k4 v4 k5 v5 k6 v6 OK
3.8. Use mget to view the values of multiple key s
Syntax format: mget key1 key2 key3
127.0.0.1:6379> MGET k1 k2 k3 k4 k5 k6 1) "v1" 2) "v2" 3) "v3" 4) "v4" 5) "v5" 6) "v6" View on the command line [root@redis-1 ~]# redis-cli MGET k1 k2 k3 k4 k5 k6 1) "v1" 2) "v2" 3) "v3" 4) "v4" 5) "v5" 6) "v6"
3.9. Check whether a key exists
Syntax format exists key
A return result of 1 indicates existence, and a return result of 0 indicates nonexistence
[root@redis-1 ~]# redis-cli 127.0.0.1:6379> EXISTS k10 (integer) 0 127.0.0.1:6379> EXISTS k6 (integer) 1 Command line creation [root@redis-1 ~]# redis-cli exists k6 (integer) 1
3.10. Delete a key
Syntax format: del key
A return result of 1 indicates that the deletion is successful, and a return result of 0 indicates that it does not exist
[root@redis-1 ~]# redis-cli 127.0.0.1:6379> del k6 (integer) 1 127.0.0.1:6379> del k6 (integer) 0 command line [root@redis-1 ~]# redis-cli del k6 (integer) 0