MySQL主鍵自增長報duplicate_MySQL使用on duplicate key update引起主鍵不連續自增

innodb_autoinc_lock_mode中有3種模式,0,1,2,數據庫默認是1的情況下,每次使用insert into … on duplicate key update 的時候都會把簡單自增id增加,不管是發生了insert還是update

innodb_autoinc_lock_mode參數詳解

tradition(innodb_autoinc_lock_mode=0) 模式:

1、它提供了一個向后兼容的能力

2、在這一模式下,所有的insert語句(“insert like”) 都要在語句開始的時候得到一個表級的auto_inc鎖,在語句結束的時候才釋放這把鎖,注意呀,這里說的是語句級而不是事務級的,一個事務可能包涵有一個或多個語句。

3、它能保證值分配的可預見性,與連續性,可重復性,這個也就保證了insert語句在復制到slave的時候還能生成和master那邊一樣的值(它保證了基于語句復制的安全)。

4、由于在這種模式下auto_inc鎖一直要保持到語句的結束,所以這個就影響到了并發的插入。

consecutive(innodb_autoinc_lock_mode=1) 模式:

1、這一模式下去simple insert 做了優化,由于simple insert一次性插入值的個數可以立馬得到確定,所以mysql可以一次生成幾個連續的值,用于這個insert語句;總的來說這個對復制也是安全的(它保證了基于語句復制的安全)

2、這一模式也是mysql的默認模式,這個模式的好處是auto_inc鎖不要一直保持到語句的結束,只要語句得到了相應的值后就可以提前釋放鎖

interleaved(innodb_autoinc_lock_mode=2) 模式:

1、由于這個模式下已經沒有了auto_inc鎖,所以這個模式下的性能是最好的;但是它也有一個問題,就是對于同一個語句來說它所得到的auto_incremant值可能不是連續的。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539119.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539119.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539119.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

super go_Go 簡單性的價值:來自對 Go 倍加青睞的谷歌軟件工程師的自述

點擊上方藍色“Go語言中文網”關注我們,領全套Go資料,每天學習 Go 語言Go 語言最近幾年逐漸獲得越來越多的開發者的喜歡。在 Go 社區前不久剛剛慶祝Go誕生10周年生日之際,谷歌云軟件工程師 Benjamin Congdon 發表個人博客(11 月 11 日發表)&a…

判斷鼠標是否在元素上_是否清掃保潔、是否霧撒降塵?江城環衛車裝上了北斗,動動鼠標就知道了...

楚天都市報12月1日訊(記者盧成漢 通訊員金嬋 潘婷)環衛車裝上北斗定位系統,它是否上路進行清掃保潔,是否霧撒降塵。城管隊員通過手機或電腦,就可以查到它的運行狀態。1日,東湖高新區城管執法局稱,該區運行的北斗智能環…

Object 對象詳解

2019獨角獸企業重金招聘Python工程師標準>>> 面向對象的核心思想:“找合適的對象,做適合的事情”。 合適的對象: 1. 自己描述類,自己創建對象。 2. sun已經描述了好多常用的類,可以使用這些類創建對象。 API&#xff0…

vi/vim命令

概述 vi: Visual Interface vim: VI iMproved vim模式 有三種: 編輯模式(命令模式) 如:通過命令新增一行,刪除一行,復制一行,光標移動等 輸入模式 輸入模式在屏幕末尾一定有這個“-- INSERT --” 末行模式 ESC&…

python條件判斷true_Python中的True,False條件判斷實例分析

本文實例講述了Python中的True,False條件判斷用法。分享給大家供大家參考。具體分析如下:對于有編程經驗的程序員們都知道條件語句的寫法:以C為例:代碼如下:if (condition){doSomething();}對于Python中的條件判斷語句的寫法則是下面的樣子&a…

python安裝報錯類型_解決Python安裝cryptography報錯問題

解決Python安裝cryptography報錯問題錯誤一:gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi…

使用ntpdate校正linux系統的時間

原文地址:http://blog.csdn.net/lixianlin/article/details/7045321 ------------------------------------------------------------------------------------- 當Linux服務器的時間不對的時候,可以使用ntpdate工具來校正時間。 安裝:yum in…

Visual Studio 2017 15.6發布

\看新聞很累?看技術新聞更累?試試下載InfoQ手機客戶端,每天上下班路上聽新聞,有趣還有料!\\\微軟發布了Visual Studio 2017的第6次升級。和之前的發布一樣,此次升級包含多項Bug修復和整個IDE使用體驗的改善…

主mysql刪除從服務不同步_MySQL主從不同步解決

由于binlog日志帶多刪除了幾個后發現MySQL主從不同步1、由于binlog日志帶多刪除了幾個后發現MySQL主從不同步mysql> show slave status\G;Slave_IO_Running: NoSlave_SQL_Running: Yes查看報錯日志為[ERROR] Slave I/O: Got fatal error 1236 from master when reading data…

python切片是什么_python列表切片是什么

我們基本上都知道Python的序列對象都是可以用索引號來引用的元素的,索引號可以是正數由0開始從左向右,也可以是負數由-1開始從右向左。在Python中對于具有序列結構的數據來說都可以使用切片操作,需注意的是序列對象某個索引位置返回的是一個元…

cat-grep-sed應用案例

案例&#xff1a; 已知文件test.txt內容為&#xff1a; test liming xiaoming 請打印出test.txt內容時&#xff0c;不包含xiaoming字符串的命令。 創建文件test.txt [roothello110 testdata]# cat >>test.txt<<EOF > test > liming > xiaoming >…

機器學習(一)梯度下降算法的實現及過程分析

機器學習&#xff08;一&#xff09;梯度下降算法 因為算法最好能應用到實際問題中才會讓讀者感到它的真實的用處&#xff0c;因此首先我來描述一個實際問題&#xff08;梯度下降算法用以幫助解決該問題&#xff09;&#xff1a;給定一個指定的數據集&#xff0c;比如由若干某一…

quick time不可用_那些校園中“不可言說”的鄙視鏈

原標題&#xff1a;那些校園中“不可言說”的鄙視鏈俗話說&#xff0c;有人的地方就有江湖&#xff0c;有江湖的地方總有人喜歡論論劍&#xff0c;分個高低&#xff0c;更何況是聚集了五湖四海人群的大學呢&#xff01;今天小U總結出了一篇高校鄙視鏈大全&#xff0c;快來看看符…

select怎么設置默認值_20200817:詳細說下數據傾斜怎么解決?

福哥答案2020-08-17&#xff1a;數據傾斜是大數據領域繞不開的攔路虎&#xff0c;當你所需處理的數據量到達了上億甚至是千億條的時候&#xff0c;數據傾斜將是橫在你面前一道巨大的坎。很可能有幾周甚至幾月都要頭疼于數據傾斜導致的各類詭異的問題。數據傾斜是指&#xff1a;…

邢不行python資源_邢不行—數字貨幣python量化投資

本帖最后由 ynjie 于 2020-10-14 21:39 編輯課時1.1 什么是量化投資.mp4課時1.2 數字貨幣市場特點.mp4課時1.3 2018量化炒幣7大玩法復盤.mp4課時1.4 量化策略案例&#xff1a;Excel演示定投策略.mp4課時1.5 量化策略案例&#xff1a;Python演示定投策略.mp4課時1.6 量化策略案例…

數據庫查詢某一列大寫轉化小寫字母表示_基于MySQL數據庫下億級數據的分庫分表...

移動互聯網時代&#xff0c;海量的用戶數據每天都在產生&#xff0c;基于用戶使用數據的用戶行為分析等這樣的分析&#xff0c;都需要依靠數據都統計和分析&#xff0c;當數據量小時&#xff0c;數據庫方面的優化顯得不太重要&#xff0c;一旦數據量越來越大&#xff0c;系統響…

ASP.NET Core Docker Jenkins 零基礎持續集成實戰

一.本系列教程說明 源代碼管理工具&#xff1a;Gogs 持續集成工具&#xff1a;Jenkins 容器&#xff1a;Docker 二.git管理軟件的選擇 沒有采用gitlab&#xff0c;因為gitlab比較吃配置&#xff0c;至少得2核4G的配置。采用go語言開發的gogs來代替&#xff0c;搭建方便(不到10分…

vs 啟動調用的目標發生異常_協程中的取消和異常 | 取消操作詳解

在日常的開發中&#xff0c;我們都知道應該避免不必要的任務處理來節省設備的內存空間和電量的使用——這一原則在協程中同樣適用。您需要控制好協程的生命周期&#xff0c;在不需要使用的時候將它取消&#xff0c;這也是結構化并發所倡導的&#xff0c;繼續閱讀本文來了解有關…

java http 下載文件_JAVA通過HttpURLConnection 上傳和下載文件的方法

本文介紹了JAVA通過HttpURLConnection 上傳和下載文件的方法&#xff0c;分享給大家&#xff0c;具體如下&#xff1a;HttpURLConnection文件上傳HttpURLConnection采用模擬瀏覽器上傳的數據格式&#xff0c;上傳給服務器上傳代碼如下&#xff1a;package com.util;import java…