2013-02-05 30 views
0

我有一個運行非常繁重的MySQL查詢的系統,我們希望提供一種通過JDBC中斷查詢的方法。 Statement.cancel()似乎是要走的路,它有效地發送一個單獨的連接到數據庫的KILL QUERY。但是,由於我們正在處理MyISAM表,我們沒有任何操作的事務管理。KILL QUERY對MyISAM表上INSERT和LOAD DATA INFILE語句的影響

我想了解KILL QUERY對LOAD DATA INFILE語句或INSERT的影響。

看起來LOAD DATA INFILE語句比您的平均INSERT語句有點危險,所以我想知道是否殺死語句會使表格處於損壞狀態。

謝謝!

回答

0
  • 查詢將被殺死;
  • 更改將被回滾。

沒有風險使表損壞。

+0

啊!現在我意識到我忘記了一個重要細節:我的問題是針對MyISAM和ARCHIVE表,因此缺少事務支持意味着無法回滾整個操作。 – ahelix

+0

我沒有試過這個選項。我認爲表格不會由於一致的寫入而被破壞,但是你最好在開箱時嘗試一下。 – ravnur