[MySQL/主从同步同步1452主外键错误]

大家MySQL主从同步的时候最头痛的莫过于 code 1452的状态码,这个原因是你的主从数据不一致导致主外键错误,解决也很简单,但是有些朋友没有深入了解MySQL的话 会对主外键陌生,导致无法正确的再从上面插入主数据,下面带大家简单快速了解主外键问题 以及 出现问题及时插入数据,不影响线上问题;

简单的一个1452报错信息:
这里写图片描述

有的朋友会在网上找各种解决办法,其实并不难,但是有的老司机,不影响同步 直接set 跳过一级,但是你要想清楚如果那样的话 你这个主从就完全不一致了,如果在同步那个表的话,那么还会报错,这时我们要从最根本的问题去解决 :

先看报错信息 我们来解剖一下:

关键字:zabbix库下的item_discovery表下的itemid字段 外键_名citem_discovery_1 依赖于 items表下的itemid字段 ,也就是itemid字段他依赖于 items下的itemid 字段 这就是主外键,关系 我们看一下 表结构

这里写图片描述

CONSTRAINT c_item_discovery_1 FOREIGN KEY (itemid) REFERENCES items (itemid) ON DELETE CASCADE,
和我上面说的是一样的解决1452的办法很简单,按照报错 sql语句 往主键的字段插入对应的数据

insert into items(itemid) value(48605,48606,)
插的时候注意看 对应的字段 哪个字段报错了 插入哪个

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL主从同步是一种常用的数据库复制技术,用于将一个MySQL数据库的数据和操作同步到其他MySQL数据库上。主从同步可以提高数据库的可用性、可扩展性和数据备份能力。下面是MySQL主从同步的基本原理和步骤: 1. 主从角色:在主从同步中,有一个数据库(Master)和一个或多个从数据库(Slave)。数据库负责接收和处理所有的写操作,而从数据库则复制数据库的数据和操作。 2. 二进制日志(Binary Log):数据库会将所有的写操作记录在二进制日志中,包括插入、更新和删除等操作。二进制日志是主从同步的基础。 3. 数据库配置:在数据库上,需要开启二进制日志功能,并配置一个唯一的服务器ID。这个ID用于标识数据库。 4. 从数据库配置:在从数据库上,需要配置数据库的IP地址、端口号和二进制日志文件名等信息。从数据库会连接到数据库,并请求复制二进制日志。 5. 复制过程:当从数据库连接到数据库后,数据库会将二进制日志中的数据和操作发送给从数据库。从数据库会解析并执行这些操作,以保持与数据库的数据一致性。 6. 异步复制:默认情况下,MySQL主从同步是异步进行的,即数据库不会等待从数据库执行完操作才返回。这样可以提高数据库的性能,但也可能导致主从数据的稍许延迟。 7. 监控和故障处理:在主从同步中,需要定期监控主从数据库的状态,确保同步正常。如果出现故障或延迟,需要及时排查和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值