当我通过以下方式获取查询列表时,MySQL 探查器将查询长度削减超过 300 个字符
SHOW PROFILES
Run Code Online (Sandbox Code Playgroud)
我看到这样的查询:
SELECT media_videos.`id` AS `media_videos.id`, media_videos.`user_id` AS `media_videos.user_id`, media_videos.`description` AS `media_videos.description`, media_videos.`likes` AS `media_videos.likes`, media_videos.`video` AS `media_videos.video`, media_videos.`resource` AS `media_videos.resource`,
Run Code Online (Sandbox Code Playgroud)
(这是一个自动生成的查询,因此可能会很长)
所以它显示了所有查询,但大的查询被削减到 300 个字符,我看不到它们到底。
我如何仅使用 MySQL 工具来解决这个问题(而不是手动分析我的应用程序中的查询)?my.cnf 中可能有一些指令?
谢谢你!
也许不是您想要的答案,但仍然是答案:
SHOW PROFILE在sql/sql_profile.cc中实现
代码片段如下:
#define MAX_QUERY_LENGTH 300U
Run Code Online (Sandbox Code Playgroud)
用于
void QUERY_PROFILE::set_query_source(char *query_source_arg,
uint query_length_arg)
{
/* Truncate to avoid DoS attacks. */
uint length= min(MAX_QUERY_LENGTH, query_length_arg);
...
Run Code Online (Sandbox Code Playgroud)
因此,如果没有使用更大的值重新编译服务器,SHOW PROFILE 无论如何都会将查询截断为 300 个字符。
| 归档时间: |
|
| 查看次数: |
680 次 |
| 最近记录: |