Rumah > Artikel > pangkalan data > Bagaimana untuk menyelesaikan masalah pangkalan data MySQL yang tersekat semasa melaksanakan Kemas Kini
Biasanya masalahnya ialah urus niaga pangkalan data tidak diserahkan, menyebabkan kemas kini atau pemadaman tersekat.
Selepas melakukan kemas kini atau pemadaman, ingat untuk melakukan transaksi;
Cari pelanggan pangkalan data , lakukan melakukan operasi.
Jika masih tidak berkesan. Apabila pangkalan data gagal melaksanakan operasi data atau transaksi tidak dilakukan, ia mengunci pernyataan SQL yang perlu dilaksanakan.
Semak status penyerahan automatik pangkalan data melalui arahan berikut
show variables like 'autocommit';
Tetapkan penyerahan automatik pangkalan data kepada mati melalui SQL
-- on为开启,off为关闭 set autocommit=off; -- 或者1为开启,0为关闭 set autocommit=0;
Jadual Data adalah seperti berikut:
Buka dua tetingkap untuk melaksanakan operasi kemas kini masing-masing
update car set color ='银色' where id = 1; update car set color ='红色' where id = 1;
Pertanyakan transaksi yang sedang dilaksanakan:
SELECT * FROM information_schema.INNODB_TRX;
Menurut ID utas (trx_mysql_thread_id) transaksi dalam gambar, kita dapat melihat utas mysql yang sepadan: satu ialah 1084 (kemas kini sedang menunggu kunci) dan satu lagi ialah 1089 (kemas kini sedang dilaksanakan tanpa melakukan transaksi)
Anda boleh menggunakan arahan mysql untuk mematikan benang: kill thread id
kill 1089;
Jika benang yang memegang kunci tidak dimatikan dalam tempoh tersebut: maka kemas kini kedua Pernyataan akan menggesa tamat masa kunci tunggu.
Arahan berkaitan:
-- 查看正在锁的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; -- 查看等待锁的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS; -- 查询mysql数据库中存在的进程 select * from information_schema.`PROCESSLIST`(show processlist;)
Mod operasi Oracle:
Pertanyaan rekod terkunci
SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objects ao, v$session s WHERE ao.object_id = lo.object_id AND lo.session_id = s.sid;
Padam rekod terkunci
ALTER system KILL session 'SID,serial#';
Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah pangkalan data MySQL yang tersekat semasa melaksanakan Kemas Kini. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!