摘要: mysql高可用架构 myql复制功能可用于mysql在线升级. mysql二进制日志原来默认段模式,现在默认row模式,复制更安全,缺点日志量更大,可以通过修改row_image参数来优化,默认FULL(20列修改一列,20列全部记录),可以修改成NOBLOB(只要text或者BLOB列没更新,就 阅读全文
posted @ 2020-07-15 17:30 红嘴鲤鱼 阅读(161) 评论(0) 推荐(0) 编辑
摘要: https://www.cnblogs.com/zsh-blogs/p/11497720.html 阅读全文
posted @ 2020-07-15 11:43 红嘴鲤鱼 阅读(96) 评论(0) 推荐(0) 编辑
摘要: sysbench介绍 SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试:1. cpu性能2. 磁盘io性能3. 线程调度性能4. 互斥锁性能5. 数据库性能(OLTP基准测试)6. 内存性能 目前sysben 阅读全文
posted @ 2020-07-15 11:15 红嘴鲤鱼 阅读(865) 评论(0) 推荐(0) 编辑
摘要: mysql数据库结构设计和SQL优化 数据库设计对性能的影响 1.过分的反范式化设计为表建立太多的列(服务层和存储引擎层之间通过反冲格式来拷贝数据和解析成列,列过多,带来额外的cpu消耗) 2.过分范式化造成过多的表关联,mysq最多支持61张表的关联查询,需要控制在10个以内 3.使用不恰当的分区 阅读全文
posted @ 2020-07-10 17:31 红嘴鲤鱼 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 1.基于XA协议的两段提交 2.基于mycat和sharding-jdbc,二者都已经实现了xa协议 3.基于TCC事务补偿机制 4.基于base原理的最终一致性方案,包括 本地消息表(适用于和本公司外部的分布式事务) 基于MQ(适用于本公司内部的分布式事务) 阅读全文
posted @ 2020-07-09 22:47 红嘴鲤鱼 阅读(133) 评论(0) 推荐(0) 编辑
摘要: PS:在写这段代码的时候,还发现了一个细节,就是try...catch代码块后面的代码,在发生异常的时候,会能执行到的。所以B回滚的代码:throw e,是不需要放在finally里面的,也就是说,只要B事务发生异常,无论A补偿是否成功,B都可以成功的回滚。 但是经过和别人的讨论,发现此处严谨来说, 阅读全文
posted @ 2020-07-09 21:34 红嘴鲤鱼 阅读(1911) 评论(0) 推荐(0) 编辑
摘要: mysql体系结构 插件式存储引擎,将数据的查询和存储相分离.每一款存储引擎都有各自的优缺点.可以灵活选用 架构: 客户端 -> mysql服务层 -> 存储引擎层 存储引擎是针对表,不是针对库,同一库中的不同的表,可以使用不同的存储引擎.(但是不建议这样做),存储引擎的不同会对性能产生直接的影响. 阅读全文
posted @ 2020-07-08 12:05 红嘴鲤鱼 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 网络对性能的影响: (1)网络带宽 (2)网络性能,丢包会重复发送 建议: 1.采用高性能,高带宽的网络接口设备和交换机 2.对多个网卡进行绑定,增强可用性和带宽 3.尽可能的进行网络隔离,特别是内外网的隔离 CentOS系统参数优化(推荐书籍:<linux性能优化大师>) 内核相关参数(/etc/ 阅读全文
posted @ 2020-07-08 10:34 红嘴鲤鱼 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 此版本bug众多 1.连接mycat,选择设计表报错 2.checksqlschemaa属性,默认true,会导致利用本地文件生成全局id时,insert语句执行失败,报lost connection 改成false,可以执行,但是刷新表就报错了,报unknown database ‘XXX’ 3. 阅读全文
posted @ 2020-07-07 22:26 红嘴鲤鱼 阅读(749) 评论(0) 推荐(0) 编辑
摘要: 图片,文件,二进制数据永远不要放到mysql数据库里。很多人会觉得既然数据库支持BLOB类型的数据,把文件塞进BLOB字段里一定没有错了!?错,不是这样的! 别的先不提,在很多数据库语言里,处理大字段都不是很容易。把文件存放在数据库里有很多问题:1.对数据库的读/写的速度永远都赶不上文件系统处理的速 阅读全文
posted @ 2020-07-07 12:12 红嘴鲤鱼 阅读(542) 评论(0) 推荐(0) 编辑