文章目录
视频课
【狂神说Java】Redis最新超详细版教程通俗易懂_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili
Redis中存对象的方式
# 字符串String
#json格式,取出来后要切割字符串好获得对象的各个属性
127.0.0.1:6379> set user:1 {name:wu,age:3}
OK
127.0.0.1:6379> get user:1
"{name:wu,age:3}"
# 字符串String
127.0.0.1:6379> mset user:1:name wu user:1:age 2 # mset命令用于同时设置一个或多个 key-value对
OK
127.0.0.1:6379> mget user:1:name user:1:age # mget命令返回所有(一个或多个)给定key 的值。
1) "wu"
2) "2"
# 哈希Hash
127.0.0.1:6379> hset user:1 name wu
(integer) 1
127.0.0.1:6379> hget user:1 name
"wu"
Redis中几条命令
1、lrem key count element
移除列表key的从左到右(从上到下),数count个element元素。
127.0.0.1:6379> rpush list 1 2 1 3 1 4
(integer) 6
127.0.0.1:6379> lrange list 0 -1
1) "1"
2) "2"
3) "1"
4) "3"
5) "1"
6) "4"
127.0.0.1:6379> lrem list 2 1
(integer) 2
127.0.0.1:6379> lrange list 0 -1
1) "2"
2) "3"
3) "1"
4) "4"
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> lpush list 1 2 1 3 1 4
(integer) 6
127.0.0.1:6379> lrange list 0 -1
1) "4"
2) "1"
3) "3"
4) "1"
5) "2"
6) "1"
127.0.0.1:6379> lrem list 2 1
(integer) 2
127.0.0.1:6379> lrange list 0 -1
1) "4"
2) "3"
3) "2"
4) "1"
127.0.0.1:6379>
2、getrange key start end
getrange命令的下标从0开始,getrange key 0 2为获得[0,2]
127.0.0.1:6379> set key value
OK
127.0.0.1:6379> getrange key 0 2
"val"
3、hincrby key field increment
hincrby命令:将key保存的值加上一个整数,如果key不存在则添加key。
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> hincrby myhash field 3
(integer) 3
127.0.0.1:6379> hincrby myhash field 3
(integer) 6
127.0.0.1:6379> hget myhash field
"6"
127.0.0.1:6379> hgetall myhash
1) "field"
2) "6"
4、Config Get 命令
Config Get 命令:获取 redis 服务的配置参数。
127.0.0.1:6379> config get dir #得到dir这个配置
1) "dir"
2) "/usr/local/bin"
127.0.0.1:6379> config get * #得到所有配置
1) "rdbchecksum"
2) "yes"
3) "daemonize"
4) "yes"
。。。
报错的解决:ERR wrong number of arguments for ‘lpush’ command
解决:在Redis 2.4版本以前的 LPUSH 命令,都只接受单个 value 值。所以要下载3.2.100的Windows版本的Redis。
Windows版本Linux下载:Release 3.2.100 · microsoftarchive/redis
如何触发RDB(Redis DataBase)快照
1、命令save/bgsave。
save是同步。
bgsave是异步,fork出一个新子进程,原来的 Redis 进程(父进程)继续处理客户端请求,而子进程则负责将数据保存到磁盘,然后退出。
127.0.0.1:6379> save
OK
2、命令flushall
3、退出redis时,下面的方式退出redis,会把cli和server都退出了。
127.0.0.1:6379> shutdown
not connected> exit
[root@wu1 ~]#
4、达到redis.conf里的条件,如“save 120 10”,也会产生dump.rdb文件。
修复appendonly.aof文件
appendonly.aof文件所在目录:/usr/local/bin。
Redis主从复制
在主从复制中,rdb是备用的,在从机上面,因为不占主机内存。aof我们几乎不使用。
当主机断电宕机后,默认情况下从机的角色不会发生变化 ,集群中只是失去了写操作,当主机恢复以后,又会连接上从机恢复原状。
当从机断电宕机后,若不是使用配置文件配置的从机,再次启动后作为从机是无法获取之前主机的数据的,若此时重新配置称为从机,又可以获取到主机的所有数据。这里就要提到一个同步原理。
其他
1、Linux的命令模式下,直接按"/",然后输入要查询的字符串,有ctrl+f的效果,然后按n/N,向下/上查询。
2、修改完redis.conf文件想要这个文件的更改立马生效的话,关闭redis再重新打开就好了,即下面这样关闭。
127.0.0.1:6379> shutdown
not connected> exit
[root@wu1 ~]#