0、概念理解:用戶(hù)會(huì)話(huà)和連接線程是什么關(guān)系?
用戶(hù)會(huì)話(huà)和用戶(hù)連接線程是一一對(duì)應(yīng)的關(guān)系,一個(gè)會(huì)話(huà)就一個(gè)用戶(hù)連接線程。
問(wèn)題描述:
如果系統(tǒng)因?yàn)閳?zhí)行了一個(gè)非常大的dml或者ddl操作導(dǎo)致系統(tǒng)hang住,我們想斷掉這個(gè)操作,怎么辦?
解決辦法:
1、kill thread:殺死用戶(hù)的會(huì)話(huà)
但是時(shí)間長(zhǎng),效果不佳:前滾+回滾,前提是已經(jīng)進(jìn)行了很長(zhǎng)時(shí)間,回滾就需要更多的時(shí)間
2、kill mysqld進(jìn)程:推薦,用這種殺進(jìn)程的方式,速度快
kill -9 進(jìn)程號(hào)(ps aux 查看進(jìn)程號(hào))
數(shù)據(jù)庫(kù)先前滾,不主動(dòng)回滾,直接可以對(duì)外進(jìn)行服務(wù)了,當(dāng)讀到哪個(gè)未提交事務(wù)時(shí)再去慢慢回滾。