位置: 编程技术 - 正文

MySQL replace into 语句浅析(二)

编辑:rootadmin

推荐整理分享MySQL replace into 语句浅析(二),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

一 介绍

上一篇文章介绍了replace into的基本原理。本章内容通过一个例子说明 replace into 带来的潜在的数据质量风险,当涉及replace into操作的表含有自增主键时,主备切换后会造成数据覆盖等不一致的情况发生。

二 案例分析

在主库上操作此时检查主备库上t1的表结构都是一样的,AUTO_INCREMENT 都是2.此时检查主备库中t1 表结构,请注意AUTO_INCREMENT=4从库上t1的表结构 ,AUTO_INCREMENT=2

【分析】

MySQL replace into 语句浅析(二)

表t1的表结构 AUTO_INCREMENT=2 而主库上的t1表结构的AUTO_INCREMENT=4.原本replace操作是在自增主键的情况下,遇到唯一键冲突时执行的是delete+insert,但是在记录binlog时,却记录成了update操作,update操作不会涉及到auto_increment的修改。备库应用了binlog之后,备库的表的auto_increment属性不变。

三 风险点:

如果主备库发生主从切换,备库变为原来的主库,按照原来的业务逻辑再往下会发生什么&#;如果t1表本来就存在多条记录 ,主从切换之后,应用写新的主库则会发生主键冲突,这个留给各位读者自己测试一下。^_^

四 解决方法

推荐使用 insert into table values(,....) on duplicate key update 语法结构来解决业务需求。 来避免replace into 给含有自增主键的表带来主从不一致情况。

五 总结

由于replace into操作在遇到主键冲突的时候 会修改主键的值,所以如果业务逻辑强依赖自增ID,绝对不要用replace,普通环境也不建议这样用,因为replace into 操作可能会导致主键的重新组织.推荐使用 insert into table values(,....) on duplicate key update 来解决业务需求。

使用innodb_force_recovery解决MySQL崩溃无法重启问题 一背景某一创业的朋友的主机因为磁盘阵列损坏机器crash,重启MySQL服务时报如下错误:InnoDB:Readingtablespaceinformationfromthe.ibdfiles...InnoDB:Restoringpossiblehalf-writte

MySQL slave_net_timeout参数解决的一个集群问题案例 【背景】对一套数据库集群进行5.5升级到5.6之后,alter.log报warning异常。--::[Warning]StoringMySQLusernameorpasswordinformationinthemasterinforepositoryisnotsecur

MySQL Index Condition Pushdown(ICP)性能优化方法实例 一概念介绍IndexConditionPushdown(ICP)是MySQL5.6版本中的新特性,是一种在存储引擎层使用索引过滤数据的一种优化方式。a当关闭ICP时,index仅仅是dataaccess的一种

标签: MySQL replace into 语句浅析(二)

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

上一篇:MySQL replace into 语句浅析(一)

下一篇:使用innodb_force_recovery解决MySQL崩溃无法重启问题(使用权资产)

  • 公司股东变更需要本人到场吗
  • 营销活动,单位让现场观众抽现金奖如何入账?
  • 合同负债里面含增值税吗
  • 企业的主管部门承担什么责任
  • 非税收入包括哪些项目行政事业性收费
  • 转让土地缴纳增值税进项如何抵扣
  • 结转产成品会计分录怎么做
  • 咨询服务费要交税吗
  • 债转股企业所得税资本公积
  • 合伙企业可以弥补以前年度亏损吗
  • 购入的苗木种植一段时间后再销售要交增值税吗?
  • 个人所得税退税截止日期2023
  • 电子公章盖上去怎么文字看不到了
  • 单位缴交的社保和医保还要交其他费用吗
  • 金融性负债总额是什么
  • 个人所得税适合月度税率表有哪些
  • 个税免缴款
  • 私募股权投资
  • 地下车库怎么缴费
  • 归还法人前期垫付款项
  • 进口缴纳的关税通过什么核算
  • 投入法和产出法的确定属于会计估计变更吗
  • 财务预提
  • 用人单位发放工资时跨行手续费应由谁支付
  • mac菜单键怎么设置出来的
  • 修改远程桌面端口脚本
  • 固定资产财产损失的账务处理
  • 固定资产增加应计入什么
  • 银行贷款利息已划转支付
  • 事业单位以固定薪资为准
  • 个人代开普票的个人经营所得税如何计算
  • 合同负债和预收负债的区别
  • 一般纳税人开出13%的普通发票怎么扣税
  • 驾校属于什么行业分类类别
  • php写json
  • 金蝶科目明细表
  • thinkphp log
  • 盈余公积转增资本什么意思
  • 新版python
  • 当深度学习遇上Web开发:Spring和OpenAI如何实现图片生成?
  • dhcp命令行
  • 管理费用税金怎么算
  • 关于高德地图的分析报告
  • 赔偿金需要交税么
  • 帝国最新版本
  • 物权变动的原因是什么
  • 不抵扣的发票需要认证吗
  • discuz是啥
  • 计提增值税的会计凭证
  • 公司pos机使用规范
  • 资产负债表的编制原理
  • 应交税费增值税销项税
  • 企业所得税的营业收入怎么填
  • 企业接管的方式有
  • 损益类科目全部科目
  • 销售货款是什么
  • 研发支出是什么意思
  • 建筑行业挂靠代扣税款如何入账?
  • 支付宝收入什么意思
  • 年底暂估收入,年初怎么做
  • 研发费用如何做成本分析
  • 两家公司
  • SQLServer XML数据的五种基本操作
  • win2008r
  • windowsxp文件
  • linux 解析
  • windows7不能使用的文件名
  • ubuntu undate-rc.d 的一些使用介绍
  • win7注册表修改开机密码
  • 与web站点和web页面
  • win8找不到恢复环境怎么恢复出厂设置
  • win7运行速度
  • kb4592449-windows安全每月质量汇总
  • css网站布局实录 pdf
  • linux内核讲解
  • 从安卓设备导入
  • 甘肃国税电子税务局
  • 上海市网上税务局如何登录
  • 加计扣除的税收分类编码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设