在做主从读写分离时候,需要注意主从的一些不同参数设置,来提高从库的性能,提高应用读取数据的速度,这样做很有必要的。

做读写分离复制主从参数不同设置如下(需要根据自己应用实际情况来设置):

parmeter

master

slave

read_only

off

on

innodb_flush_log_at_trx_commit

1

2

sync_binlog

1

1000

slave_parallel_workers

8

16

server_id

xxxx

nnnn

innodb_buffer_pool_size

25G

51G

event_sheduler

On

Off

Read_only:设置MySQL数据库是只读模式,如果做读写分离,最好把从库设置只读模式,避免数据在从库被修改,导致主从不一致问题。

innodb_flush_log_at_trx_commit:控制事务日志何时写盘和刷盘,安全递增:0,2,1。从库的重要性没有主库大,所以从库可以设置为2,减小io压力。

0:每秒一次事务缓存区刷新到文件系统,同时文件系统到磁盘同步,但是事务提交时,不会触发log_buffer到文件系统同步;

2:每次事务提交时,会把事务缓存区日志刷新到文件系统中去,且每秒文件系统到磁盘同步;

1:每次事务提交时刷新到磁盘,最安全;

适用环境:

0:磁盘IO能力有限,安全方便较差,无复制或复制延迟可以接受,如日志性业务,mysql损坏丢失1s事务数据;

2:数据安全性有要求,可以丢失一点事务日志,复制延迟也可以接受,OS损坏时才可能丢失数据;

1:数据安全性要求非常高,且磁盘IO能力足够支持业务,如充值消费,敏感业务;

sync_binlog:控制刷新binlog到磁盘的频率,安全递增:0,1。从库的安全级别可以设置的低点,所以设置为1000,减少io压力。

0:表示MySQL不控制binlog的刷新,由文件系统去控制它缓存的刷新。

1:每1次事务提交,MySQL就调用文件系统的刷新操作刷新binlog到磁盘中。

大于1的整数值:每多少提交,MySQL就调用文件系统的刷新操作刷新binlog到磁盘中。

slave_parallel_workers:从端并行执行开启的进程数,从端并发线程增多,可以提高并发处理能力。

innodb_buffer_pool_size:如果是只读从库,可以把innodb的buffer_pool设置大些,提高buffer命中,提高性能。

server_id和event_sheduler不用说了,大家都知道。

MySQL主从复制读写分离如何提高从库性能-实战的更多相关文章

  1. mysql主从复制-读写分离

    mysql主从复制+读写分离 环境:mysql主:193.168.1.1mysql从:193.168.1.2amoeba代理:193.168.1.3########################## ...

  2. MySQL 主从复制&读写分离 简介

    1. 读写分离&读写分离 简介 主从同步延迟 分配机制 解决单点故障 总结 2. 主从复制&读写分离 搭建 搭建主从复制(双主) 搭建读写分离 1. 读写分离&读写分离 简介 ...

  3. mysql主从复制-读写分离-原理

    Mysql主从复制和读写分离 在实际的生产环境中,如果对mysql数据库的读和写都在一台数据库服务器中操作,无论是在安全性.高可用性,还是高并发等各个方面都是不能满足实际需求的.因此,一般通过主从复制 ...

  4. Mycat+MySql 主从复制-读写分离 看这一篇就够了

    ​ 通过mycat和mysql的主从复制配合搭建数据库的读写分离,可以实现mysql的高可用性,下面我们来搭建mysql的读写分离. 1.一主一从 1.在node01上修改/etc/my.cnf的文件 ...

  5. mysql主从复制+读写分离 菜鸟入门

    MYsql主从复制 1.mysql主从复制原理: Master将数据变化记录到二进制日志中[binary log] Slave将master的二进制日志[binary log]拷贝到自己的中继日志[r ...

  6. MYSQL 主从复制,读写分离(8)

    Mysql 数据库的主从复制方案,是其自带的功能,并且主从复制并不是复制磁盘上的数据文件,而是通过binlog日志复制到需要同步的服务器上. 一 主从复制的原理实现 原理图解说: 数据库更改 生成数据 ...

  7. Mycat实现mysql主从复制(读写分离)

    数据库性能瓶颈主要原因: 随着用户数的增多,带来的是数据库连接的大幅度增长 随着业务体量的增长,表数据量(空间存储的问题)的大幅增长,其中涉及到索引的优化,mysql默认的索引是硬盘级别的,BTREE ...

  8. Mysql主从复制读写分离

    一.前言:为什么MySQL要做主从复制(读写分离)?通俗来讲,如果对数据库的读和写都在同一个数据库服务器中操作,业务系统性能会降低.为了提升业务系统性能,优化用户体验,可以通过做主从复制(读写分离)来 ...

  9. MySQL主从复制&读写分离&分库分表

    MySQL主从复制 MySQL的主从复制只能保证主机对外提供服务,从机是不提供服务的,只是在后台为主机进行备份数据 首先我们说说主从复制的原理,这个是必须要理解的玩意儿: 理解: MySQL之间的数据 ...

随机推荐

  1. ssh设置别名

    通常我们在 Termianl 下用 ssh 链接远程主机的时候,每次都需要输入一长串的用户名加主机地址,是不是觉得很麻烦? 我们知道在 /etc/ssh/ 目录下通常都会有 ssh_config 和 ...

  2. [转]完美的背景图全屏css代码 – background-size:cover?

    写主题样式的时候经常会碰到用背景图铺满整个背景的需求,这里分享下使用方法 需要的效果 图片以背景的形式铺满整个屏幕,不留空白区域 保持图像的纵横比(图片不变形) 图片居中 不出现滚动条 多浏览器支持 ...

  3. Cordova 常用的插件汇总

    1.分享到微信:cordova-plugin-wechat 地址:https://github.com/xu-li/cordova-plugin-wechat 安装: cordova plugin a ...

  4. checkbox判断选中的三种方法

    方法一: if ($("#checkbox-id")get(0).checked) {     // do something } 方法二: if($('#checkbox-id' ...

  5. 模糊查询(like)

    1. 找出名中包含 “厂”的所有供应商的名select * from provider where pro_name like '%厂%'2.第二个字为华select * from provider ...

  6. MVC中的验证码

    下面是一个完整的mvc controller类 public class CodeController : Controller { private const string CODE = " ...

  7. iOS 警告收集快速消除

    1.ld: warning: directory not found for option 去掉警告的方法 工程老是提示ld: warning: directory not found for opt ...

  8. IsBackground对线程的重要作用

    要点: 1.当在主线程中创建了一个线程,那么该线程的IsBackground默认是设置为FALSE的. 2.当主线程退出的时候,IsBackground=FALSE的线程还会继续执行下去,直到线程执行 ...

  9. mysql存储过程中最后有commit和没有commit 是有所不同的。(为测试但是碰到过这个问题)

    如果存储过程中没有执行commit,那么spring容器一旦发生了事务回滚,存储过程执行的操作也会回滚.如果存储过程执行了commit,那么数据库自身的事务此时已提交,这时即使在spring容器中托管 ...

  10. 【工作中学习】CreateProcessAsUser失败,错误码:1314

    事情起因是这样, 产品的Windows服务(Service)之前一直是用Local System Account在运行的,但这个版本有需求要换成使用普通的Domain User来运行,如下图: 但却出 ...