最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決MySql8.0 查看事務隔離級別報錯的問題

 更新時間:2021年10月08日 14:21:56   作者:小匠心  
這篇文章主要介紹了解決MySql8.0 查看事務隔離級別報錯的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

MySql8.0 查看事務隔離級別報錯

問題

數據庫查看事務隔離級別

select @@global.tx_isolation,@@tx_isolation;

報錯:

mysql> select @@global.tx_isolation,@@tx_isolation;
ERROR 1193 (HY000): Unknown system variable 'tx_isolation'
mysql> select @@global.tx_isolation,@@tx_isolation;
ERROR 1193 (HY000): Unknown system variable 'tx_isolation'

我用的mysql8.0版本。tx_isolation在8.0版本更改為global.transaction_isolation

命令更改為

select @@global.transaction_isolation,@@transaction_isolation;

MySQL的事務隔離級別(包含mysql8.0+設置與查看)

MySQL的四種事務隔離級別

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

1、原子性(Atomicity):事務開始后所有操作,要么全部做完,要么全部不做,不可能停滯在中間環(huán)節(jié)。事務執(zhí)行過程中出錯,會回滾到事務開始前的狀態(tài),所有的操作就像沒有發(fā)生一樣。也就是說事務是一個不可分割的整體,就像化學中學過的原子,是物質構成的基本單位。

2、一致性(Consistency):事務開始前和結束后,數據庫的完整性約束沒有被破壞 。比如A向B轉賬,不可能A扣了錢,B卻沒收到。

3、隔離性(Isolation):同一時間,只允許一個事務請求同一數據,不同的事務之間彼此沒有任何干擾。比如A正在從一張銀行卡中取錢,在A取錢的過程結束前,B不能向這張卡轉賬。

4、持久性(Durability):事務完成后,事務對數據庫的所有更新將被保存到數據庫,不能回滾。

二、事務的并發(fā)問題

1、臟讀:事務A讀取了事務B更新的數據,然后B回滾操作,那么A讀取到的數據是臟數據

2、不可重復讀:事務 A 多次讀取同一數據,事務 B 在事務A多次讀取的過程中,對數據作了更新并提交,導致事務A多次讀取同一數據時,結果 不一致。

3、幻讀:系統(tǒng)管理員A將數據庫中所有學生的成績從具體分數改為ABCDE等級,但是系統(tǒng)管理員B就在這個時候插入了一條具體分數的記錄,當系統(tǒng)管理員A改結束后發(fā)現還有一條記錄沒有改過來,就好像發(fā)生了幻覺一樣,這就叫幻讀。

小結:不可重復讀的和幻讀很容易混淆,不可重復讀側重于修改,幻讀側重于新增或刪除。解決不可重復讀的問題只需鎖住滿足條件的行,解決幻讀需要鎖表

三、MySQL事務隔離級別 事務的隔離級別分為

未提交讀(read uncommitted)、已提交讀(read committed)、可重復讀(repeatable read)、串行化(serializable)。

四種級別由低到高依次為Read uncommitted 、Read committed 、Repeatable read 、Serializable ,這四個級別可以逐個解決臟讀 、不可重復讀 、幻讀 這幾類問題。

: 可能出現 : 不會出現

在這里插入圖片描述

未提交讀

A事務已執(zhí)行,但未提交;B事務查詢到A事務的更新后數據;A事務回滾;—出現臟數據

已提交讀

A事務執(zhí)行更新;B事務查詢;A事務又執(zhí)行更新;B事務再次查詢時,前后兩次數據不一致;—不可重復讀

可重復讀

A事務無論執(zhí)行多少次,只要不提交,B事務查詢值都不變;B事務僅查詢B事務開始時那一瞬間的數據快照;—幻讀

串行化

不允許讀寫并發(fā)操作,寫執(zhí)行時,讀必須等待;

四、數據庫設置

//查看當前事物級別(mysql8.0以上版本不適用, 請看下面):
SELECT @@tx_isolation;

//設置mysql的隔離級別:
set session transaction isolation level;設置事務隔離級別

//設置read uncommitted級別:
set session transaction isolation level read uncommitted;

//設置read committed級別:
set session transaction isolation level read committed;

//設置repeatable read級別:
set session transaction isolation level repeatable read;

//設置serializable級別:
set session transaction isolation level serializable;

Mysql 8.0+ 查詢數據庫事務隔離級別

根據慕課網課程中的方法,查詢事務隔離級別使用:

select @@tx_isolation;

我在sequal pro中,卻提示錯誤:Unknown system variable ‘tx_isolation'

查詢了官方文檔,在8.0+就已經拋棄了這樣的查詢方法,

https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html

在這里插入圖片描述

在MySQL 8.0.3 中,該變量已經被 transaction_isolation 替換了。

最新的查詢方法有多種,下面提供2種:

1、select @@transaction_isolation;

在這里插入圖片描述

2、show variables like ‘transaction_isolation';

在這里插入圖片描述

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • MySQL數據查詢limit子句用法舉例

    MySQL數據查詢limit子句用法舉例

    這篇文章主要介紹了MySQL數據查詢limit子句用法的相關資料,LIMIT子句在MySQL中用于限制查詢結果集的行數,適用于分頁顯示和限制數據量,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-02-02
  • windows下mysql 8.0.16 安裝配置方法圖文教程

    windows下mysql 8.0.16 安裝配置方法圖文教程

    這篇文章主要為大家詳細介紹了windows下mysql 8.0.16 安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 如何使用mysqladmin獲取一個mysql實例當前的TPS和QPS

    如何使用mysqladmin獲取一個mysql實例當前的TPS和QPS

    這篇文章主要介紹了如何使用mysqladmin這個工具來獲取一個mysql實例當前的TPS和QPS,幫助大家更好的管理數據庫,感興趣的朋友可以了解下
    2020-11-11
  • MySQL表轉移數據的三種方式小結

    MySQL表轉移數據的三種方式小結

    本文主要介紹了MySQL表轉移數據的三種方式小結,包括SQL命令,數據量不大的情況,直接使用SQL插入數據及使用Canal工具,具有一定的參考價值,感興趣的可以了解一下
    2025-02-02
  • MySQL查詢字段為NULL、不為NULL的數據問題

    MySQL查詢字段為NULL、不為NULL的數據問題

    介紹了MySQL查詢字段為NULL和不為NULL的數據時需要注意的幾點,包括查詢語句的編寫和NULL與其他字符的操作,通過實際操作對比,指出使用IS NOT NULL可以正確查詢到非NULL字段的數據
    2025-02-02
  • mysql數據被誤刪的恢復方案以及預防措施

    mysql數據被誤刪的恢復方案以及預防措施

    這篇文章主要介紹了幾種常見的MySQL數據恢復方法,包括使用備份、二進制日志、InnoDB表空間恢復以及第三方工具,每種方法都有其優(yōu)缺點,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-02-02
  • MySQL數據庫數據類型的注意點和應用實例

    MySQL數據庫數據類型的注意點和應用實例

    這篇文章主要介紹了MySQL數據庫數據類型的注意點和應用的相關資料,MySQL數據類型主要包括tinyint、bit、float、decimal、char和varchar等,每種類型都有其特定的存儲范圍和適用場景,需要的朋友可以參考下
    2024-12-12
  • 詳解MySQL分區(qū)表

    詳解MySQL分區(qū)表

    這篇文章主要介紹了MySQL分區(qū)表的相關資料,幫助大家更好的理解和學習mysql,感興趣的朋友可以了解下
    2020-08-08
  • 完美解決MySQL數據庫服務器CPU飆升問題

    完美解決MySQL數據庫服務器CPU飆升問題

    這篇文章主要介紹了解決 MySQL 數據庫服務器 CPU 飆升的方法,包括定位問題(如使用工具監(jiān)控、查看慢查詢日志)、優(yōu)化 SQL 查詢、調整配置參數、優(yōu)化數據庫架構、檢查硬件資源、處理鎖競爭問題等,還通過電商業(yè)務系統(tǒng)的案例進行了詳細分析及給出解決方法,最終優(yōu)化效果顯著
    2025-02-02
  • 詳解關于MySQL 8.0走過的坑

    詳解關于MySQL 8.0走過的坑

    這篇文章主要介紹了詳解關于MySQL 8.0走過的坑,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09

最新評論

额济纳旗| 奇台县| 宝山区| 德庆县| 博湖县| 昆明市| 会理县| 垫江县| 嵊泗县| 内丘县| 祁连县| 乐业县| 横山县| 黄陵县| 内江市| 玉山县| 龙山县| 桦甸市| 富民县| 金阳县| 赣榆县| 府谷县| 泗洪县| 锦屏县| 济宁市| 通州市| 砚山县| 榆树市| 中方县| SHOW| 尉氏县| 庆安县| 芦山县| 石狮市| 长阳| 双鸭山市| 金堂县| 甘孜| 铜陵市| 龙州县| 澄城县|