嘟嘟社区

mysql 主从设置问题


我先用show master status;  在主机上查看了master_log_pos是643530781。
然后马上导出全部数据,导出完了恢复到从机上,
change master to master_host=’*****’,master_port=3506,master_user=’root’,master_password=’*****’,master_log_file=’mysql-bin.000001′,master_log_pos=643530781;

  start slave;
然后启动了从机,
通过show slave status G;
查看状态,
  Slave_IO_Running: Yes
  Slave_SQL_Running: No

Last_SQL_Error: Could not execute Write_rows event on table 表名; Duplicate entry ‘1544986975042408448’ for key ‘PRIMARY’, Error_code: 1062; handler error HA_ERR_FOUND_DUPP_KEY; the event’s master log mysql-bin.000001, end_log_pos 643531187

然后是这个错误,这是因为我查看了pos的值后,然后导出,数据库又有新的添加了。我记得pos值,不是我导出数据的值,是这个意思吧?只能让数据库没有新增,然后导出再弄么?

两个方法,一个用命令导出sql,里面有pos的值,直接用,就算有新增也没关系,第二个show master status;之前先锁主库写入,网上有sql,自行搜索

傍晚升起的太阳 发表于 2022-7-7 18:37
两个方法,一个用命令导出sql,里面有pos的值,直接用,就算有新增也没关系,第二个show master status;之 …

导出用的下面命令,文件开头好像没写pos值,怎么弄呢。求助。
mysqldump     -uroot -p     数据库 > 2022.sql

高级玩法,求教程。

klgd 发表于 2022-7-7 19:08
高级玩法,求教程。

会了。加个–master-data=2  导出

现在应该使用 GTID 方式,不用再关注 log position。配置更简单,健壮性也更强了。网上文档已经很多了,可以参考一下