Istnieje wiele postów na to za pomocą dwóch sesji.
https://dba.stackexchange.com/questions/309/code -symulować-zakleszczenie
http://www.xaprb.com/blog/2006/08/08/how-to-deliberately-cause-a-deadlock-in-mysql/
Metoda skopiowana z drugiego artykułu powyżej
Najpierw wybierz nieużywaną nazwę tabeli. Użyję test.innodb_deadlock_maker. Oto instrukcje, które musisz wykonać:
create table test.innodb_deadlock_maker(a int primary key) engine=innodb;
insert into test.innodb_deadlock_maker(a) values(0), (1);
Teraz tabela i jej dane są skonfigurowane. Następnie wykonaj następujące czynności na dwóch różnych połączeniach:
-- połączenie 0
set transaction isolation level serializable;
start transaction;
select * from test.innodb_deadlock_maker where a = 0;
update test.innodb_deadlock_maker set a = 0 where a <> 0;
-- połączenie 1
set transaction isolation level serializable;
start transaction;
select * from test.innodb_deadlock_maker where a = 1;
update test.innodb_deadlock_maker set a = 1 where a <> 1;