2014-03-03 24 views
2

當我在MySQL工作臺上執行查詢時,我得到了該查詢的結果。如果出現錯誤,那麼它會向您提供錯誤代碼以及一些數據。如果通過,則返回總記錄插入/更新/總警告以及所有警告的列表。如何在執行查詢後將MySQL響應存儲到表中?

我有一個執行INSERT INTO ...... ON DUPLICATE KEY UPDATE

我需要做的就是創建一個將存儲所有的每個查詢執行後返回的結果的表的存儲過程。

我想捕捉以下

  1. 總插入
  2. 全部更新
  3. 總警告
  4. 如果有警告,然後我想捕捉由MySQL返回的所有筆記 。
  5. 如果在查詢中出現錯誤,那麼我需要 來捕獲錯誤輸出。

我需要這樣做的原因是因爲這個過程是由一個事件觸發的。所以我需要知道每天發生的事情,以便我可以調查錯誤/警告。

謝謝

回答

0

所以...這裏有點晚了,但我會放棄這一點。

如果其他人正在尋找這樣的事情...

我相信你所尋找的是performance_schema

如果你在你的MySQL版本的選擇。

(目前在此時使用AWS/RDS 5.6.34-log)。

你可以看看錶後,看看性能,鎖插入,更新,警告(准許你有你的sql_mode設置),以及其他各種我相信你所期望的事情。

其中有很多東西,但是它對已經出現問題的mysql很重要,至少我看到了使用亞馬遜的out of the box設置。

例子:

SELECT * FROM performance_schema.events_statements_history LIMIT 1000; 
SELECT * FROM performance_schema.events_statements_history_long LIMIT 1000; 
SELECT * FROM performance_schema.mutex_instances LIMIT 1000; 
SELECT * FROM performance_schema.events_waits_current LIMIT 1000; 
SELECT * FROM performance_schema.events_stages_summary_by_account_by_event_name LIMIT 1000; 
SELECT * FROM performance_schema.events_stages_summary_by_host_by_event_name LIMIT 1000; 
SELECT * FROM performance_schema.events_stages_summary_by_thread_by_event_name LIMIT 1000; 

不附屬或與以下公司相關聯。

MySQL Documents

datadoghq ref: on setting up performance_schema for AWS