婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > mysql的事務,隔離級別和鎖用法實例分析

mysql的事務,隔離級別和鎖用法實例分析

熱門標簽:博樂電銷機器人 鄭州網絡外呼系統價錢 怎么更改高德地圖標注 400電話到哪辦理優惠 機器人打電銷電話 電話機器人是電腦呼號嗎 云南大數據外呼系統 上海市三維地圖標注 南寧外呼系統招商

本文實例講述了mysql的事務,隔離級別和鎖用法。分享給大家供大家參考,具體如下:

事務就是一組一起成功或一起失敗的sql語句。事務還應該具備,原子性,一致性,隔離性和持久性。

一、事務的基本要素 (ACID)

1、原子性:事務開始后,所有的操作,要么全部成功,要么全部失敗,不可能處于中間狀態,事務是一個不可分割的整體,就像原子一樣。

2、一致性:事務開始前和結束后,數據庫的完整性約束沒有破壞,A向B轉賬,A扣了錢,但B卻沒到賬。

3、隔離性:同時發生的事務(并發事務)不應該導致數據庫處于不一致的狀態中,每個事務都獨立執行,不影響其他事務的存在。

4、持久性:事務對數據庫的更改都會保存在磁盤上,不會丟失。

二、事務的并發問題

1、臟讀:事務A讀取了事務B未提交的寫入數據,讀取到的數據就稱為臟數據

2、不可重復讀:事務A多次讀取同一數據,但在讀取過程中,事務B對數據做了修改,并提交了。導致多次讀取同一數據,結果不一樣。

3、幻讀:事務A對表中所有數據行進行了修改,比如設置status = 1,但同時,事務B往該表插入了一行新數據status = 0,對于操作事務A的用戶而言,表中還有一條記錄沒被修改,就像發生幻覺一樣。

三、事務隔離性的四個級別

事務隔離級別 臟讀 不可重復讀 幻讀
讀取未提交 read uncommitted

讀已提交 read committed

×

可重復讀取 repeatable read

×

×

序列化 serializable

×

×

×

四、獲取和設置數據庫隔離級別

SHOW VARIABLES LIKE '%isolation%';
SHOW GLOBAL VARIABLES LIKE '%isolation%';

使用系統變量查詢

SELECT @@GLOBAL.tx_isolation;
SELECT @@SESSION.tx_isolation;
SELECT @@tx_isolation;

對于mysql8而言,使用下面的變量進行查詢

SELECT @@GLOBAL.transaction_isolation;
SELECT @@SESSION.transaction_isolation;
SELECT @@transaction_isolation;

設置隔離級別

SET GLOBAL tx_isolation = '隔離級別';
SET SESSION tx_isolation = '隔離級別';
SET @@tx_isolation = '隔離級別';

對于mysql8而言,使用下面語句進行設置

SET GLOBAL transaction_isolation = '隔離級別';
SET SESSION transaction_isolation = '隔離級別';
SET @@transaction_isolation = '隔離級別';

五、通過例子說明各隔離級別的情況

先準備一張表,和一點數據。

CREATE TABLE `account` (
 `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',
 `name` varchar(32) DEFAULT '' COMMENT '名稱',
 `money` decimal(11,2) DEFAULT '0.00' COMMENT '金錢',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO `account` (`name`, `money`) VALUES ('A', '500.00');
INSERT INTO `account` (`name`, `money`) VALUES ('B', '100.00');

1、讀取未提交

set transaction_isolation = 'READ-UNCOMMITTED';
set autocommit = 0;

事務B修改了表中的數據,但是未提交,事務A確讀取到了修改后的數據。如果因為某些原因,事務B回滾了,事務A讀取的這個數據就是臟數據。

2、讀已提交

set transaction_isolation = 'READ-COMMITTED';
set autocommit = 0;

事務B修改數據但沒有提交,那么事務A仍然獲取的原來數據,解決了臟讀的問題。

但是事務B提交,事務A執行上一次查詢,結果與上一次查詢不一致,這就產生不可重復讀的問題。

3、可重復讀取

set transaction_isolation = 'REPEATABLE-READ';
set autocommit = 0;

事務B修改了數據并提交了,事務A兩次查詢的結果是一致的,解決了不可重復讀的問題。

這個時候,事務A去修改name為A的money數據

name為A的money變成了350,而不是400,可重復讀保證了數據的一致性。

我們重新在事務A中修改所有賬號的money等于200,同時在事務B中插入一條新的數據。

事務A中獲取的仍然是兩條數據,解決了新增數據時,事務A出現的幻讀問題。

4、序列化

set transaction_isolation = 'SERIALIZABLE';
set autocommit = 0;

事務A對表進行查詢,如果沒有提交,則事務B的插入語句一直等待在那里,直到超時或事務A提交。

反之,事務B對表進行插入后,沒有提交,則事務A對表的查詢也一直等待,直到事務B提交。

此時對表的讀寫都會進行鎖表,當然對并發性能的影響也比較大。

隔離級別越高,越能保證數據的完整性和一致性。

六、mysql的鎖

鎖分為兩種類型:

內部鎖:mysql服務器內部執行的內部鎖,以管理多個會話對表內容的爭用。

外部鎖:mysql為客戶會話提供顯式地獲取表鎖,以阻止其他會話訪問表。

內部鎖又會為兩種類型:

1、行級鎖:行級鎖是細粒度的,只有被訪問的行會被鎖定,這允許多個會話同時進行寫訪問。

2、表級鎖:mysql對myisam,memory和merge表使用表級鎖,一次只允許一個會話更新表,這使得這些存儲引擎更適用于以讀取為主的操作。

外部鎖:可以使用 LOCK TABLE 和 UNLOCK TABLE 來控制鎖定。

READ (共享鎖) :多個會話可以從表中讀取數據而不需要獲取鎖,此外,多個會話可以在同一表上獲得鎖,當 READ 鎖時,沒有會話可以將數據寫入表中。任何寫入操作都將處于等待狀態,直到 READ 鎖被釋放。

WRITE (排他鎖) :當表被 WRITE 鎖定時,除持有該鎖的會話外,其他會話都不能讀取或寫入數據,除非 WRITE 鎖被釋放。

鎖表的語句:

LOCK TABLES table_name [READ | WRITE];

解鎖表的語句:

UNLOCK TABLES;

鎖定數據庫中所有表:

FLUSH TABLES WITH READ LOCK;

更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL索引操作技巧匯總》、《MySQL常用函數大匯總》、《MySQL日志操作技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》及《MySQL數據庫鎖相關技巧匯總》

希望本文所述對大家MySQL數據庫計有所幫助。

您可能感興趣的文章:
  • MySQL中Innodb的事務隔離級別和鎖的關系的講解教程
  • 關于Mysql隔離級別、鎖與MVCC介紹
  • 深入理解Mysql的四種隔離級別
  • MySQL 四種事務隔離級別詳解及對比
  • MySQL四種事務隔離級別詳解
  • Mysql事務隔離級別之讀提交詳解
  • MySQL數據庫事務隔離級別詳解
  • MySQL隔離級別和鎖機制的深入講解

標簽:益陽 定西 恩施 寧夏 杭州 白銀 澳門 秦皇島

巨人網絡通訊聲明:本文標題《mysql的事務,隔離級別和鎖用法實例分析》,本文關鍵詞  mysql,的,事務,隔離,級別,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《mysql的事務,隔離級別和鎖用法實例分析》相關的同類信息!
  • 本頁收集關于mysql的事務,隔離級別和鎖用法實例分析的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲国产中文字幕在线视频综合 | 一区二区三区精品在线观看| 久久影视一区二区| 欧美videos大乳护士334| 777午夜精品视频在线播放| 欧美美女喷水视频| 日韩欧美综合一区| 国产欧美精品一区二区三区四区 | www.爱久久.com| 99国产精品视频免费观看| av色综合久久天堂av综合| 91网站黄www| 精品视频在线看| 日韩小视频在线观看专区| 精品国产一区二区在线观看| 欧美激情综合在线| 亚洲韩国精品一区| 毛片一区二区三区| 粉嫩高潮美女一区二区三区| 一本久久综合亚洲鲁鲁五月天| 欧美性色aⅴ视频一区日韩精品| 欧美福利视频一区| 久久久激情视频| 亚洲区小说区图片区qvod| 亚洲gay无套男同| 韩国欧美一区二区| 日本韩国精品在线| 91麻豆精品国产自产在线观看一区 | 一区二区三区高清在线| 亚洲成人动漫在线观看| 九色综合国产一区二区三区| 成人激情小说网站| 91.com在线观看| 国产精品久久久久四虎| 视频一区二区三区在线| av一本久道久久综合久久鬼色| 91精品国产综合久久精品性色| 久久精品在线观看| 午夜伦欧美伦电影理论片| 国产风韵犹存在线视精品| 欧美美女一区二区三区| 亚洲欧洲无码一区二区三区| 久草中文综合在线| 欧美三级在线看| 中文字幕精品一区二区精品绿巨人| 午夜激情久久久| 99热这里都是精品| 欧美精品一区二区三区蜜桃视频| 亚洲一区二区三区自拍| 国产suv精品一区二区6| 精品国产乱码91久久久久久网站| 一区二区三区中文字幕| 国产**成人网毛片九色| 精品理论电影在线观看| 免费成人结看片| 欧美色爱综合网| 一区二区三区欧美视频| 一本色道久久综合精品竹菊| 国产精品九色蝌蚪自拍| 国产成人av一区二区三区在线观看| 欧美一区二区免费视频| 日韩中文字幕av电影| 色婷婷一区二区三区四区| 亚洲欧洲精品一区二区三区| 国产精品一品二品| 久久久久久久综合日本| 国产精品一区二区在线看| 精品久久一区二区| 国产精品一色哟哟哟| 国产色爱av资源综合区| 国产精品资源站在线| 久久久久久久久久久99999| 久久国产精品99精品国产 | 欧美电影免费观看高清完整版在| 日韩高清不卡一区二区| 日韩精品最新网址| 国产乱对白刺激视频不卡| 久久影视一区二区| 成人性视频免费网站| 中文字幕一区日韩精品欧美| 一本色道亚洲精品aⅴ| 亚洲一区二区三区免费视频| 欧美日韩在线精品一区二区三区激情 | 99热99精品| 一区二区三区影院| 欧美男生操女生| 久久成人综合网| 国产欧美日韩中文久久| 91免费观看在线| 亚洲成av人影院| 精品国产一区二区三区久久久蜜月 | 日韩av不卡在线观看| 91精品国产综合久久久久久久久久| 久久黄色级2电影| 中文字幕日韩精品一区 | 久久精品国产网站| 26uuu精品一区二区| 99视频有精品| 日本va欧美va欧美va精品| 国产亚洲欧美在线| 色天使久久综合网天天| 免费人成在线不卡| 国产精品黄色在线观看| 欧美日韩免费视频| 成人av影视在线观看| 亚洲国产一区二区a毛片| www国产成人免费观看视频 深夜成人网| 高清不卡一区二区| 偷拍一区二区三区| 中文字幕一区二区视频| 日韩精品中文字幕在线不卡尤物 | 国产在线麻豆精品观看| 日韩理论在线观看| 26uuu欧美日本| 欧美性高清videossexo| 国产成人av资源| 男女男精品视频| 亚洲欧美另类图片小说| 久久久国产精品麻豆| 欧美欧美午夜aⅴ在线观看| www.欧美日韩国产在线| 激情欧美一区二区| 午夜精品久久久久影视| 国产精品家庭影院| 国产亚洲一区二区在线观看| 欧美一级在线观看| 欧美三级中文字幕| 色婷婷精品大在线视频| 国产99精品在线观看| 精品一区二区三区在线播放 | 精品裸体舞一区二区三区| 欧美日韩国产综合一区二区三区| 成人国产视频在线观看| 国产一区二区精品久久91| 久久不见久久见免费视频1| 日韩不卡在线观看日韩不卡视频| 1024国产精品| 亚洲天堂av一区| 18成人在线视频| 中文字幕亚洲精品在线观看 | 91.麻豆视频| 欧美日韩国产高清一区二区三区 | 91麻豆精品91久久久久久清纯| 色综合久久天天综合网| 在线免费亚洲电影| 91黄色激情网站| 欧美性淫爽ww久久久久无| 在线精品亚洲一区二区不卡| 一本在线高清不卡dvd| 色婷婷久久久亚洲一区二区三区| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 日韩亚洲欧美成人一区| 精品免费99久久| 国产日韩欧美不卡在线| 中文字幕日韩一区| 亚洲国产一区二区视频| 日本伊人色综合网| 精品亚洲欧美一区| 国产成人精品网址| 一本一道综合狠狠老| 欧美久久久久中文字幕| 精品理论电影在线观看| 欧美高清在线视频| 亚洲精品国产视频| 蜜桃视频第一区免费观看| 国产精品2024| 99精品国产热久久91蜜凸| 欧美日韩久久久一区| 欧美videossexotv100| 国产精品无码永久免费888| 亚洲一区影音先锋| 国产一区二区三区黄视频 | 日韩欧美黄色影院| 国产色91在线| 亚洲自拍另类综合| 久久精品国产一区二区| 92国产精品观看| 日韩免费高清视频| 日韩一区中文字幕| 美女网站在线免费欧美精品| 不卡一区二区在线| 日韩欧美视频一区| 一区二区三区蜜桃网| 国产精品中文字幕日韩精品| 一本大道久久精品懂色aⅴ| 日韩免费视频一区二区| 18涩涩午夜精品.www| 久久99深爱久久99精品| 91国产精品成人| 国产丝袜美腿一区二区三区| 亚洲国产精品一区二区久久| 国产电影精品久久禁18| 日韩视频一区二区三区 | 国产欧美一区二区三区沐欲| 亚洲国产视频一区二区| 成人国产精品免费网站| 日韩精品一区二区三区蜜臀| 亚洲午夜免费视频| 97se亚洲国产综合自在线不卡| 2020日本不卡一区二区视频|