首頁 > 資料庫 > mysql教程 > MySQL的transaction level对django的影响

MySQL的transaction level对django的影响

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-07 16:52:26
原創
989 人瀏覽過

默认: transaction level对mysql是REPEATABLE READ, 这样一个mysql session内,每次读到的资料都是不变的, 不管其他事务对表做了什

默认: transaction level对mysql是REPEATABLE READ, 这样一个mysql session内,每次读到的资料都是不变的, 不管其他事务对表做了什么更新. 这样性能比较高, 但却未必是得到准确的符合数据库最新情况的资料, 可能程序里会遭遇一些异常, 例如django的get_or_create()调用执行碰到奇怪: 明明是无法get, 自动转做create,但数据库就说记录冲突.

应该: 改用READ COMMITTED, 这是与Oracle一致的.

在my.cnf里[mysqld]下写:

transaction-isolation=READ-COMMITTED

mysql> select @@global.tx_isolation;
+———————–+
| @@global.tx_isolation |
+———————–+
| READ-COMMITTED |
+———————–+
1 row in set (0.03 sec)

linux

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
MySQL不知道錯哪裡了?
來自於 1970-01-01 08:00:00
0
0
0
PHPstudy資料庫不能啟動
來自於 1970-01-01 08:00:00
0
0
0
mysql - PHP定時通知、準時發布怎麼做?
來自於 1970-01-01 08:00:00
0
0
0
mysql 報錯 ON 子句中的未知欄位 'a.plat'
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板