1. 程式人生 > 其它 >主鍵衝突解決方法

主鍵衝突解決方法

技術標籤:MySQL資料庫mysqllinux

MySQL互為主從中可能會出現主鍵衝突的情況

問題

例如在A主機有主鍵ID為4的資料存在,然後在B主機插入主鍵ID為4的資料,就會出現主鍵衝突。解決這個問題的方法是我們可以讓每個主機在主鍵自增的數分開!例如A主機為:1、3、5、7 B主機為:2、4、6、8
配置方法:
先登入資料庫查詢引數
查詢引數的語句:show variables like 'auto%';

mysql> show variables like 'auto%';
+--------------------------+-------+
| Variable_name            |
Value | +--------------------------+-------+ | auto_increment_increment | 1 | | auto_increment_offset | 1 | | autocommit | ON | | automatic_sp_privileges | ON | +--------------------------+-------+ 4 rows in set (0.01 sec) mysql>

master上新增配置:

auto_increment_increment=2 自動增長的間隔數

auto_increment_offset=1 自動增長的起始數值
如圖:
在這裡插入圖片描述

slave上新增配置

auto_increment_increment=2 自動增長的間隔數
auto_increment_offset=2 自動增長的起始數值
如圖:
在這裡插入圖片描述
修改完成之後均儲存退出重啟MySQL服務即可成功