MySQL相關總結

2021-08-18 09:17:23 字數 1207 閱讀 3234

事務的特性:(面試)

a原子性:說明事務是不可分割的。要麼全部成功,要麼全部不成功

c一致性:事務必須使資料庫從乙個一致性狀態變換到另外乙個一致性狀態

i隔離性:乙個執行緒的事務不能被其他執行緒事務所打擾。

d永續性:永續性是指乙個事務一旦被提交,它對資料庫中資料的改變就是永久性的,接下來即使資料庫發生故障也不應該對其有任何影響

事務的隔離級別

不考慮隔離級別,會出現以下不正確的結果:

1、髒讀:指乙個事務讀到了另外乙個未提交事務的資料。

2、不可重複讀:指乙個事務前後讀取到的同一條記錄的結果不一樣。

3、虛讀(幻讀):指乙個事務前後讀取到的記錄條數不一樣。

事務的隔離級別:

read uncommitted:髒讀、不可重複讀、虛讀都有可能發生。

read committed:避免髒讀,不可重複讀、虛讀都有可能發生。

repeatable read:避免髒讀、不可重複讀,虛讀有可能發生。

serializable:避免髒讀、不可重複讀、虛讀。

mysql:事務預設是自動管理的。每一條語句就是乙個單獨的事務。

start transaction:開啟事務。後面的語句(直到rollback或者commit之前)的語句處於同乙個事務中。

select @@tx_isolation;檢視當前的隔離級別

set transaction isolation level read uncommitted;更改隔離級別

//做實驗用的

start transaction;

update account set money=money+100 where name='aaa';

rollback;/commit;

看待資料的態度:查詢銀行程式accountdao時看自己的態度

更新多,查詢少。悲觀鎖。。(加for update 鎖定程式、銀行。防止更新丟失鎖住更新記錄

更新少,查詢多。樂觀鎖。。(version 更新等待)

where+索引列是行級鎖,加其他就是表級鎖

mysql binlog格式:  預設statment格式

row 行級:記錄每行的變化  保證資料的絕對一致行,不管執行了什麼sql 只要執行侯的結果 占用較大空間

statement: 記錄每一次執行寫操作的語句,可能產生不一致性,比如update tt set create_date=now()  占用較小空間

mysql相關總結

3.limit用法彙總 公式 當前頁curpage,每頁多少資料pagenum 查詢第二頁的資料 1 limit 10,10 查詢第三頁的資料 1 limit 20,10 limit n,表示查詢的展示的行數 1 limit 10 總記錄數 select count 1 總頁數 totalpage ...

MySql相關語句總結

cmd命令列進入資料庫mysql u root p 敲回車 輸入設定的密碼建立資料庫create database mydb mydb是需要建立的資料庫的名字 檢視建立資料庫的語句show create database mydb 改變當前的資料庫use mydb 檢視所有的資料庫show data...

MySQL相關知識學習 MySQL總結

1 獲得當前日期 時間 date time 函式 now mysql select now 2017 05 17 17 16 33 2 獲得當前日期 時間 date time 函式 sysdate sysdate 日期時間函式跟 now 類似,不同之處在於 now 在執行開始時值就得到了,sysda...