mysql第三天 事務

2021-07-03 13:45:20 字數 2161 閱讀 6520

my.ini

#可選引數有:read-uncommitted, read-committed, repeatable-read, serializable.

[mysqld]

transaction-isolation = repeatable-read

當前session

select @@tx_isolation;

settransaction

isolation

level

read uncommitted;

settransaction

isolation

level

read committed;

settransaction

isolation

level repeatable read;

settransaction

isolation

level serializable;

再看看隔離級別對應解決了的問題

//session1

set autocommit = 0;

settransaction

isolation

level

read uncommitted;

begin;

update biz_pay_task set pin = 'test1'

where id=1;

// session 2

set autocommit = 0;

settransaction

isolation

level

read uncommitted;

select * from biz_pay_task where id=1;

// session1,2

rollback;

// session 1,2

settransaction

isolation

level

read committed;

// session 1

update biz_pay_task set pin = 'test1'

where id=1;

// session 2

select * from biz_pay_task where id=1;

// session 1

commit;

// session 2

select * from biz_pay_task where id=1;

rollback;

// session 1,2

settransaction

isolation

level repeatable read;

begin;

// session 1

update biz_pay_task set pin = 'test2'

where id=1;

commit;

// session 2

select * from biz_pay_task where id=1;

rollback;

begin;

select * from biz_pay_task where id between 1

and3;

// session 1

begin;

delete

from biz_pay_task where id=2;

// session 2

select * from biz_pay_task where id between 1

and3;

// session 1

commit;

// session 2

select * from biz_pay_task where id between 1

and3;

rollback;

強制事務順序執行

mysql使用事務日誌來提高寫的效能,不是每次都用隨機io來寫硬碟,

而是先寫記憶體,記錄硬碟一小塊區域順序io的寫日誌

另外有執行緒把事務日誌回寫回資料區域硬碟

MySQL學習第三天

create table if not exists user id tinyint,engine innoob charset utf8 之後使用desc name 你會驚奇的發現tinyint後面多出了乙個4 那是因為tinyint可以表示128,符號也代表一位,它是資料寬度 即便你設定資料寬度...

初學MYSQL第三天

語法 select 查詢列表 from 表名 where 篩選條件 一 按條件表示式篩選 條件運算子 案例1 查詢工資 12000的員工資訊 select from employees where salary 12000 案例2 查詢部門編號不等於90號的員工名和部門編號 select last ...

MySQL學習第三天

如果有其它觀點可以提出來奧 什麼是連線查詢 多張表連起來查詢。如果把全部資料儲存在一張表內的話,會導致資料重複,導致資料的冗餘。在乙個資料集合中重複的資料叫做資料冗餘 連線查詢分類 根據語法劃分 sql92 sql99 sql99語法結構更清晰一些,表的連線條件和後來的where條件分離了。sql9...