- redis 启动时后面跟着配置文件才可以按配置文件启动
比如配置了密码登录 requirepass 密码,下次登录才能按密码进入,其他配置也同。redis-server.exe redis.windows.conf
- redis 持久化机制:原文地址:https://www.cnblogs.com/itdragon/p/7906481.html
- dump.rdb,对redis数据库进行操作后,根据数据量对数据库进行持久化,更新 dump.rdb 文件。默认开启,触发机制如下
save 900 1 --表示900秒内,如果有1个key的值变化,才会更新 dump.rdb save 300 10 --表示300秒内,如果有10个key的值变化,才会更新 dump.rdb save 60 10000 --表示60秒内,如果有10000个key的值变化,才会更新 dump.rdb
看系统需要可调整触发时间。
-
如果突然宕机,rdb更新不及时,就会导致数据丢失。为了弥补 dump.rdb 可能存在数据丢失,可以开启 aof ,既每次对数据进行 写操作 都更改都会记录操作日志,并 追加 到日志文件中。Redis 重启的时候会根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作,redis默认不开启。可以通过修改配置文件手动开启
1. appendonly yes # 开启AOF 2. appendfilename "appendonly.aof" #指定aof文件 3.更新日志条件 # appendfsync always 同步持久化,每次发生数据变化会立刻写入到磁盘中。性能较差当数据完整性比较好#(慢,安全) appendfsync everysec # everysec:出厂默认推荐,每秒异步记录一次(默认值) # appendfsync no # no:不同步 4.配置重写触发机制 auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb 当AOF文件大小是上次rewrite后大小的一倍且文件大于64M时触发。一般都设置为3G,64M太小了。
- dump.rdb,对redis数据库进行操作后,根据数据量对数据库进行持久化,更新 dump.rdb 文件。默认开启,触发机制如下
-
如果yml文件中没有配置redis相关配置,按默认的localhost和6379端口执行。
-
测试代码为java代码,redisTemplate 执行添加操作后,数据乱码问题,是因为redisTemplate序列化默认是jdkSerializeable序列化,存储字节码。
-
//String和hash序列化 rt.setKeySerializer(new StringRedisSerializer()); rt.setHashKeySerializer(new StringRedisSerializer());
- 配置文件
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate"> <property name="connectionFactory" ref="JedisConnectionFactory" /> <!-- string 类型序列化 --> <property name="keySerializer" ref="stringReadisSerializer"/> <property name="valueSerializer" ref="stringReadisSerializer"/> <!-- HASH 类型序列化 --> <property name="hashKeySerializer" ref="stringReadisSerializer"/> <property name="hashValueSerializer" ref="stringReadisSerializer"/> </bean>
-
Redis 小记
最新推荐文章于 2022-01-23 16:53:35 发布