, , MYSQL , 。 , , 。
InnoDB
ACID Atomicity( )、Consistency( )、Isolation( )、Durability( )
1、
, ; 。
2、
( ), 。
3、
。
, , 。
100% , 。
4、
、 ,InnoDB 。
, innodb_flush_log_at_trx_commit 。
START TRANSACTION BEGIN
( )
COMMIT
( )
ROLLBACK
SAVEPOINT adqoo_1
ROLLBACK TO SAVEPOINT adqoo_1
adqoo_1 ,
“ ”
SET AUTOCOMMIT = 0
SQL , COMMIT ROLLBACK
, COMMIT
: , , 、 。
: , 。
: , 。
1、SELECT …… LOCK IN SHARE MODE( )
, ( commit , )
SELECT ,
2、SELECT …… FOR UPDATE( )
SELECT * FROM tablename WHERE id<200
id<200 , , 、 、SELECT …… LOCK IN SHARE MODE
: SELECT …… LOCK IN SHARE MODE
3、INSERT / UPDATE / DELETE
,
4、
SELECT * FROM tablename WHERE id>200
id>200
5、
, , ROLLBACK
innodb_lock_wait_timeout = n , 50
SET [SESSION|GLOBAL] TRANSACTION ISOLATION LEVEL
READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE
1、 SESSION、GLOBAL SET
2、SET SESSION
3、SET GLOBAL
MYSQL ( )
READ UNCOMMITTED
SELECT
( COMMIT),
READ COMMITTED
COMMIT
, SELECT
REPEATABLE READ( )
, COMMIT
, SELECT ( , )
SERIALIZABLE
REPEATABLE READ , SELECT
,