位置: 编程技术 - 正文

MySQL的主从复制步骤详解及常见错误解决方法(MySQL的主从复制基于什么实现的?)

编辑:rootadmin

推荐整理分享MySQL的主从复制步骤详解及常见错误解决方法(MySQL的主从复制基于什么实现的?),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql主从复制原理以及架构,mysql主从复制原理以及架构,mysql的主从复制是什么,mysql的主从复制模式,mysql的主从复制是什么,mysql的主从复制是什么,mysql的主从复制是什么,MySQL的主从复制原理,内容如对您有帮助,希望把文章链接给更多的朋友!

mysql主从复制(replication同步)现在企业用的比较多,也很成熟.它有以下优点:

1.降低主服务器压力,可在从库上执行查询工作.

2.在从库上进行备份,避免影响主服务器服务.

3.当主库出现问题时,可以切换到从库上.

不过,用它做备份时就会也有弊端,如果主库有误操作的话,从库也会收到命令.

下面直接进入操作.这里使用的是debian5操作系统,mysql5.0,默认引擎innodb

.1.1. 主库

.1.1. 从库

1.设置主库

1)修改主库my.cnf,这里主要是server-id一定主从不要设置成一样的.打开binlog日志

2)在主服务器上建立同步账号

注意:mysql的权限系统在实现上比较简单,相关权限信息主要存储在几个系统表中:mysql.user,mysql.db,mysql.host,mysql.table_priv,mysql.columm_priv.由于权限信息的数据量比较小,访问又非常频繁,所以mysql在启动的时候,就会将所有的权限信息都加载到内存中,并保存在几个特定的结构里.这就使得每次手动修改了相关权限表之后,都需要执行flush privileges,通知mysql重新加载mysql的权限信息.当然,如果通过grants,revoke或drop user 命令来修改相关权限,则不需要手动执行flush privileges命令.

3)在主服务器上导出数据库当时的快照,传给从库上.

root@.1.1.:mysql# mysqldump -uroot -p --single-transaction --flush-logs --master-data --all-databases > all.sql--single-transaction:这个选项能够让innoDB和Falcon数据表在备份过程中保持不变.这一做法的关键在于它是在同一个事务里来导入各有关数据表的.mysqldump使用repeatable read事务隔离层来生成一份稳定一致的转储文件,同时不会阻塞其他客户(对于非事务性表,转储过程可能有变化),它不能与--lock-all-tables选项一起使用.

--flush-logs:在导出工作开始之前先清空mysql服务器的日志文件.这样更容易恢复操作,知道在检查点时间之后创建的二进制日志文件是在备份给定数据库之后完成的.结合使用--lock-all-tables或--master-data,只有在所有数据表都锁定之后才清除日志.这个选项需要具备reload权限.

--master-data:使用后mysqldump会在dump文件中产生changer master to命令,里面记录了dump时刻所对应的详细的log position信息.

2.设置从库

1).修改从库my.cnf

MySQL的主从复制步骤详解及常见错误解决方法(MySQL的主从复制基于什么实现的?)

2)将主库的快照灌入从库

3)在从库上设置同步.查看从库状态.

测试OK

当然这只是最简单的配置

还有很多参数可根据环境需求变化.

比如

replicate-do-db=test 过滤拉主日志到从只需要这个库和下面的表 replicate-wild-do-table=test.dave replicate-wild-do-table=test.davehe

mysql数据库同步跳过临时错误

Slave_IO_Running: No错误

由于主库的主机..1.1宕机,再次启来后,从库...1连接主库发现报错. Slave_IO_Running: No

查看错误日志

根据错误位置,查找主库上log ‘.' 对应的位置

结果发现主库上位置最后是 比要小. 也就是从库同步找的位置比主库要大,故同步不成功

为什么会这样,这是因为这个在sync_binlog=0的情况,很容易出现。sync_binlog=0,当事务提交之后,MySQL不做fsync之类的磁盘同步指令刷新binlog_cache中的信息到磁盘,而让系统自行决定什么时候来做同步,或者cache满了之后才同步到磁盘。

sync_binlog=n,当每进行n次事务提交之后,MySQL将进行一次fsync之类的磁盘同步指令来将binlog_cache中的数据强制写入磁盘。

在MySQL中系统默认的设置是sync_binlog=0,也就是不做任何强制性的磁盘刷新指令,这时候的性能是最好的,但是风险也是最大的。因为一旦系统Crash,在binlog_cache中的所有binlog信息都会被丢失。而当设置为“1”的时候,是最安全但是性能损耗最大的设置。因为当设置为1的时候,即使系统Crash,也最多丢失binlog_cache中未完成的一个事务,对实际数据没有任何实质性影响。从以往经验和相关测试来看,对于高并发事务的系统来说,“sync_binlog”设置为0和设置为1的系统写入性能差距可能高达5倍甚至更多。

这里由于mysql是默认配置所以该报错原因是: sync_binlog=0时 ,master binlog文件的flush log buffer(这个buffer是由于binlog文件的os buffer) 到disk是依赖于OS本身的,但Slave IO 线程在读取master dump 线程的位置,一般是直接读取log buffer的,这个位置,可能远远大于binlog文件实际大小。 所以当主机宕机后,binlog buffer未刷盘,当Master主机再次启动后,此时从库的binlog pos 已经比实际的binlog位置大小 还大了。

解决方法:

直接做change master to到当下一个binlog。

Keepalived+HAProxy实现MySQL高可用负载均衡的配置 Keepalived由于在生产环境使用了mysqlcluster,需要实现高可用负载均衡,这里提供了keepalived+haproxy来实现.keepalived主要功能是实现真实机器的故障隔离及负载均

MySQL Cluster集群的初级部署教程 MysqlCluster概述MySqlCluster最显著的优点就是高可用性,高实时性,高冗余,扩展性强。它允许在无共享的系统中部署"内存中"数据库的Cluster.通过无共享体系结

MySQL在右表数据不唯一的情况下使用left join的方法 1.leftjoin基本用法mysqlleftjoin语句格式ALEFTJOINBON条件表达式leftjoin是以A表为基础,A表即左表,B表即右表。左表(A)的记录会全部显示,而右表(B)只会显示符

标签: MySQL的主从复制基于什么实现的?

本文链接地址:https://www.jiuchutong.com/biancheng/319752.html 转载请保留说明!

上一篇:Mysql实时备份实现方法(mysql备份数据)

下一篇:Keepalived+HAProxy实现MySQL高可用负载均衡的配置

  • 弥补亏损的应纳税额 例子
  • 计提税额与实缴税额的区别是什么?
  • 个人所得税速算扣除数表
  • 公司租房代房东缴纳租房税金
  • 一般纳税人简易征收最新政策2023
  • 房地产小规模纳税人预缴税款如何填申报表
  • 卷烟批发环节消费税纳税义务发生时间
  • 印花税已经申报在哪里点交费
  • 金税盘可以用安卓的线吗
  • 一般纳税人技术服务免税发票怎么开
  • 外地施工如何找工人
  • 发票一年不能开超多少才不扣税费
  • 个税反推税前工资速算
  • 会务费账务处理
  • 受托代销商品和受托代销商品款是什么科目
  • 现金折让怎么做会计分录
  • 公司卖出汽车怎样做账
  • 审计人员用餐费用
  • 国债利润收入属于收入吗
  • 股权转让收入需要缴纳什么税
  • 企业出口不退税怎么处理
  • 税金是否可以不计提呢?
  • 计提销项税的同类有哪些
  • 税务代理有哪些岗位
  • 股权转让收益算利润吗
  • 固定资产停止折扣
  • 往年银行余额和账目不符怎么调整
  • 银行转账备用金是什么意思
  • 年初预提费用
  • 个体户需要记账嘛
  • 公司内收取的礼金
  • 企业注销时往来账目挂账怎么处理
  • msconfig配置文件
  • 长期待摊费用是当月摊销还是次月摊销
  • php二维数组添加数据
  • 非一般纳税人可以抵扣吗
  • 年度企业所得税计算方法
  • 出差海外
  • win7系统文件在哪
  • 图像分割最新算法
  • 美国宇航局视频
  • 附加税申报错误,已缴费,怎么办
  • php读取文件内容
  • 大学生web前端期刊有哪些
  • js中的变量
  • php floatval
  • 详解PostgreSQL 语法中关键字的添加
  • mysql有几种
  • mysql动态表单设计与实现
  • 企业进行材料清查盘点中盘盈的材料
  • 资金账簿印花税减半政策
  • 个人所得税如何纳税
  • 景点门票做什么科目
  • 红字发票的数量乘以单价可以不等于含税金额吗
  • 预缴增值税需要提交什么资料
  • 银行电子承兑汇票到期怎么兑现
  • 应收账款管理制度
  • 无形资产入账
  • 没开发票能确认没开发票能确认收入申报纳税吗?
  • 衍生工具属于什么科目
  • 物业费是否需要物价局备案
  • 投资者投入无形资产的入账价值
  • sql server不可用或不存在什么意思
  • MySQL slave_net_timeout参数解决的一个集群问题案例
  • mysql的多表查询语句
  • 升级win8.1 64位系统后无法玩剑灵怎么办?win8.1系统无法玩剑灵的解决方法
  • xp系统登录界面登录管理员账号
  • linux进入操作系统
  • linux进程的概念
  • win10系统打开图片内存忽大忽小
  • windows10mode
  • win10任务栏不显示输入法
  • root忘记密码了怎么办
  • 编写python
  • javascript中的对象用于
  • 国税局官网发票查验平台
  • 企业科研经费管理制度
  • 广东省地方税务局征收社会保险费欠费管理暂行办法
  • 深圳市国家税务局赵雨婷
  • 南宁税务局进面分数线
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设