redis的一些操作命令
1. ps -ef | grep redis (查看redis的启动实例)
2. ./src/redis-cli -p 6380 shutdown(关闭6380实例)
3. ./src/redis-server redis_yuzhan.conf(启动6380实例)
4. 127.0.0.1:6481> SLAVEOF 127.0.0.1 6380(把6481作为6380的slave服务器)
5. spring事务:http://www.cnblogs.com/rushoooooo/archive/2011/08/28/2155960.html
private static XStream xStream;static {xStream = new XStream();xStream.ignoreUnknownElements();xStream.autodetectAnnotations(true);}public static String toXml(Object obj) {return xStream.toXML(obj);}@SuppressWarnings("unchecked")public static <T> T fromXml(String xmlStr, Class<T> cls) {T obj = (T) xStream.fromXML(xmlStr);return obj;}
6. 如果你的redies集群有好几台从服务器,不要一次启动所有的从服务器,因为从服务器启动会从主服务器中全量同步数据,如果一次启动过多从服务器,那么主服务器就会fork出大量的子进程去dump,这样会造成主服务器高io,可能导致主服务器挂掉。
7. 当进行AOF持久化的时候
# appendfsync always 系统不缓冲,直接写,慢,丢失数据少
appendfsync everysec 每秒写一次
# appendfsync no 系统不缓冲,直接写,慢,丢失数据少
如果采用appendfsync no的方式,每写入一条命令,就往文件中写一条,这样就违背了内存数据库的只能,还不如直接写文件,因此用这种的方式:
appendfsync everysec 每秒写一次
如果每秒写入一次,这样就会减少redis的性能,这也是没办法避免的。为了数据安全性考虑。
8. 不小心flushall服务器
解决方案:立即shutdown nosave服务器!
原因:防止别的进程正在写服务器,导致aof重写。因为服务器在shutdown的时候,都会重写aof,因此加上nosave。可以让她不重写aof
9.减产rdb文件的完整性
redis-check-dump redis.conf
1. 设定slave服务器为master服务器
slaveof no one-->次台主机不作为任何机器的从服务器。
config set slave-read-only no -->可读
2. redis重试
/*** 加入缓存,带重试,最多重试MAX_RETRY次*/private boolean addToRedis(String key, String value) {if (!StringUtil.checkBlank(key)) {int retryCount = 0;while (retryCount < MAX_RETRY) {try {this.redisUtils.set(key, value);return true;} catch (Exception e) {if (retryCount == MAX_RETRY - 1)LOG.error("addToRedis : Error Del From Redis , Key=" + key + ",value=" + value, e);retryCount++;}}}return false;}
3. redis在物理上改变主从关系
public String slaveofNoOne() throws RedisAccessException {boolean flag = true;ShardedJedis j = null;String result = null;String script = "return redis.call('CONFIG','REWRITE')";try {j = writePool.getResource();Collection<Jedis> list = j.getAllShards();for (Jedis jedis : list) {jedis.slaveofNoOne();jedis.eval(script);}} catch (Exception ex) {flag = false;writePool.returnBrokenResource(j);throw new RedisAccessException(ex);} finally {if (flag) {writePool.returnResource(j);}}return result;}
4. redis 部署方案
Redis的slave节点必须配置slave-serve-stale-data=no。以便失效节点恢复成为slave时数据得到全部同步才可以放入视为健康节点。(不不要在配置文件中设置主从关系,因为运行中主从角色会发生变化要在配置文件中设置主从关系,因为运行中主从角色会发生变化。设置slave-serve-stale-data no,不允许从节点接收客户端的读写请求)
5. redis主从切换方案
1. 在redis更改主从配置。slave no one
2. 把redis运行中配置写到配置文件中:CONFIG REWRITE3. 设置redis长连接:config get timeoutconfig set timeout 0config rewrite
redis的一些操作命令相关推荐
- Redis Cluster日常操作命令梳理
在之前的一篇文章已经介绍了Redis Cluster及其部署,下面说下Redis Cluster日常操作命令: 一.以下命令是Redis Cluster集群所独有的,执行下面命令需要先登录redis: ...
- Redis源码-Set:Redis Set存储原理、Redis Set集合操作命令、Redis Set两种存储底层编码intset+hashtable、Redis Set应用场景
Redis源码-Set:Redis Set存储原理.Redis Set集合操作命令.Redis Set两种存储底层编码intset+hashtable.Redis Set应用场景 Redis数据类型 ...
- Redis 数据类型与操作命令整理
Redis 优势 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s . 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, ...
- Redis数据类型与操作命令
1. 键值对数据库 1.1 redis数据结构 redis的数据是 key-value 形式的键值对,其中 key 其实都是字符串的形式,而 value 的数据类型,也就是数据的保存形式,底层实现的方 ...
- redis的批量操作命令pipeline(PHP实现)
redis执行一条命令有四个过程:发送命令.命令排队.命令执行.返回结果:整个过程是一个往返时间(RTT).如果有n条命令,就会消耗n次RTT.Redis的客户端和服务端可能部署在不同的机器上.在两地 ...
- Redis数据库常用操作命令(查询db、key、value)
①打开Redis可视化工具,点击console,进入查询操作界面 ②打开db库: select 5 ③获取指定 key 的值 get key """ key:Mary_c ...
- 【Flask项目】Redis各种数据类型操作命令
连接redis数据库 [root@mylinux2 zhilong]# redis-cli -h 192.168.17.3 启动redis服务 [root@mylinux2 zhilong]# red ...
- Redis INCR数值操作命令
Redis string 类型提供了一些专门操作数值的命令,比如 INCRBY(自增).DECRBR(自减).INCR(加1) 和 DECR(减1) 等命令.数值操作,同样有特定的应用场景,比如常见的 ...
- linux查看redis索引,linux的redis操作命令
Linux下掌握了redis的基本操作命令对我们学习redis事半功倍.下面由学习啦小编为大家整理了linux下redis操作命令的相关知识,希望对大家有帮助! linux的redis操作命令一.ke ...
最新文章
- 人生和算法结合起来,你会不会比现在混得好?看完我明白了!
- python将照片转文字_Python将图片转化成文字
- Catboost原文解读
- CTF-web文件上传漏洞
- BlocksKit源码分析(一)
- 360服务器已停止响应,对于 SQL Server 2017年累积更新 5
- UNICODE编码UTF-16 中的Endian(FE FF) 和 Little Endian(FF FE)
- 二氧化硫填料吸收塔实验装置QY-HJGC06
- PCI及PCIe基本知识
- 微软word 2019取消交叉引用
- CRC16CCITT算法CcittKermit
- 【计算机网络】计算机网络核心知识点
- LeetCode:974. Subarray Sums Divisible by K - Python
- oracle导入提示字符过长,Oracle 解决【ORA-01704:字符串文字太长】
- opencv:centos7中安装opencv4.3.0环境
- zookeeper集群安装和配置解读 - 雨中散步撒哈拉
- 服务器任务栏不显示程序,win10系统下任务栏不显示程序窗口预览图怎么处理
- 马斯洛“需求层次理论” 在《植物大战僵尸》中的运用
- 如何设计安全可靠的开放接口---之Token
- char **和char* []区别,char *和char []区别
热门文章
- JOOMLA中文安装时 数据库发生错误解块办法
- 奥巴马表示10天内债务谈判出结果 债务违约可能性底
- 高并发高流量网络架构
- sybase存储过程修改
- mysql create at_create_at update_at
- 5G UPF + MEC 的部署位置、场景与模式
- 5G NGC — 会话管理模型 — 基于 Flow 的 QoS 模型
- Python基本语法_输入/输出语句详解
- The connected J-Link is defective,Proper operation cannot be guaranteed......的解决办法
- shell脚本--02循环与条件