現場環境客戶要求刪數據(界面沒法直接操作),於是直接在數據庫進行查詢刪除了,刪完發現界面依然能查到刪除后的數據,又用sql語句進行刪除,發現報了錯:Lock wait timeout exceeded; try restarting transaction(鎖等待超時)。上網查了一波發現是刪除后沒有提交事務造成的(當前事務在等待其它事務釋放鎖資源造成的)。所以在此紀錄下解決方法:
方法一:在mysql查詢中執行以下指令
select * from information_schema.innodb_trx,會查詢到正在運行的事務
kill trx_mysql_thread_id,然后在查詢中kill掉就行
方法二:修改配置文件(沒嘗試)
innodb_lock_wait_timeout 鎖定等待時間改大
my.ini文件:
#innodb_lock_wait_timeout = 50
修改為
innodb_lock_wait_timeout = 500