mysql - 执行查询后如何将 MySQL 响应存储到表中?

标签 mysql

当我在 MySQL Workbench 上执行查询时,我得到了该查询的结果。如果出现错误,它会为您提供错误代码和一些数据。如果通过,则返回插入的总记录/更新/总警告和所有警告的列表。

我有一个执行 INSERT INTO ...... ON DUPLICATE KEY UPDATE

的存储过程

我需要做的是创建一个表来存储每次查询执行后返回的所有结果。

我可以想捕捉以下内容

  1. 插入总数
  2. 总更新
  3. 总警告
  4. 如果有警告那么我想捕获所有的笔记 由 MySQL 返回。
  5. 如果由于各种原因在查询中出现错误,那么我需要 捕获错误输出。

之所以需要这样做,是因为这个过程是由一个事件触发的。所以我需要知道每天发生了什么,这样我才能调查错误/警告。

谢谢

最佳答案

所以...这有点晚了,但我会试一试。

如果其他人正在寻找这样的东西......

我相信您正在寻找的是 performance_schema

如果您的 mysql 版本中有该选项。

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

你可以在打开它后查看表,查看性能、锁定插入、更新、警告(假设你设置了 sql_mode),以及我相信你的其他各种事情想要。

里面有很多东西,但它对 mysql 造成了沉重的负担,而 mysql 似乎已经存在问题,至少我使用亚马逊的开箱即用设置是这样。

例子:

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;

Not affiliated or associated with the companies below.

MySQL Documents

datadoghq ref: on setting up performance_schema for AWS

关于mysql - 执行查询后如何将 MySQL 响应存储到表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22152490/

相关文章:

MySql select语句(select distinct)问题

mysql - 将主键定义转储到 schema.rb 中

mysql - 如何为 MySQL 中的每个组选择第一行?

php - 如何最好地计算高流量网站上每个用户每页的浏览量?

mysql - 在 MySQL 中存储可变产品选项

mysql - 显示最大计数 mysql 的结果

mysql - 将一个数学函数应用于另一个数学函数

javascript - 如何在我的网站上添加关注 - 取消关注按钮?

mysql - 如何从 mysql 表中选择最新的日期记录集

mysql - 使用数据库实现的锁定机制