Mac系統(tǒng)mysql設置事務隔離級別

Mac系統(tǒng)mysql設置事務隔離級別

    事務隔離級別指的是在處理同一個數(shù)據(jù)的多個事務中,一個事務修改數(shù)據(jù)后,其他事務何時能看到修改后的結果。

MySQL數(shù)據(jù)庫事務隔離級別主要有四種:

  • Serializable 串行化,一個事務一個事務的執(zhí)行
  • Repeatable read 可重復讀,無論其他事務是否修改并提交了數(shù)據(jù),在這個事務中看到的數(shù)據(jù)值始終不受其他事務影響
  • Read committed 讀取已提交,其他事務提交了對數(shù)據(jù)的修改后,本事務就能讀取到修改后的數(shù)據(jù)值
  • Read uncommitted 讀取未提交,其他事務只要修改了數(shù)據(jù),即使未提交,本事務也能看到修改后的數(shù)據(jù)值。

? ? ? ?MySQL數(shù)據(jù)庫默認使用可重復讀( Repeatable read),而使用樂觀鎖的時候,如果一個事務修改了庫存并提交了事務,那其他的事務應該可以讀取到修改后的數(shù)據(jù)值,所以不能使用可重復讀的隔離級別,應該修改為讀取已提交Read committed。

? ? ? ?由于在Mac系統(tǒng)中安裝完mysql是沒有配置文件的,所以我們需要在終端中進入mysql修改。在終端中進入mysql后輸入如下命令,查看自己mysql的事務隔離級別

# global.transaction_isolation 是全局的事務隔離級別,transaction_isolation是當前會話的事務隔離級別
select @@global.transaction_isolation, @@transaction_isolation;

# 提示,這里的transaction_isolation可能和你電腦中的變量名字不同,可以先使用命令查看一下
show variables like '%isolation%';
查看自己mysql配置中的變量名
mysql事務隔離級別

? ? ? ?之后我們需要將其修改為read committed

# 修改全局事務隔離級別
set global transaction isolation level read committed;
# 修改當前會話的事務隔離級別
set session transaction isolation level read committed;

我們選擇修改全局事務隔離級別


修改mysql全局事務隔離級別

修改完之后,退出mysql,之后再重新進入到mysql,就可以查看到事務隔離級別已經(jīng)修改好了。


修改完的mysql事務隔離級別

【友情提示:這樣修改完之后,如果重啟了電腦之后,mysql的配置是會還原的,所以重啟電腦之后需要重新設置一下?。。。。。 ?/p>

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 優(yōu)點:使用Carthage,所有的第三方庫依賴,除非是更新的需要,否則它是不需要再次編譯平常干凈編譯的Projec...
    dpplh閱讀 1,162評論 1 1
  • 我老公的表妹也就是我的小姑子,以下稱為妹妹。她家寶寶也和我家寶寶只差一天,這是一種緣分,大家都很歡喜。由于老公和妹...
    子書若水閱讀 376評論 0 1
  • 靜,是一種生活態(tài)度, 不爭,不躁,不妄動, 身可以勞累,心要淡定、寧靜。 閑,是一種心態(tài), 不計較,不比較,舍得忘...
    不知藍莓的味道閱讀 174評論 0 0
  • 我走過故鄉(xiāng)的石橋, 小河里的水已經(jīng)干涸, 兩岸的樹木卻出奇的翠綠。 我沒有再去橋上等你, 我知道我們是不可能在一起...
    伊人遠方閱讀 302評論 0 2
  • Yaping呀閱讀 224評論 2 11

友情鏈接更多精彩內(nèi)容