快速阅读

为什么要监控sql语句,以及如何监控,都有哪几种方式可以监控。

我们知道sql server 中有个工具叫sql profile ,可以实时监控sql server中 执行的sql 语句,以方便调试bug 或者确认最终生成的sql语句

为什么要监控sql语句?

  1. 因为程序大了以后,sql语句有可能被多个地方调用 。你不能确认当前时间是不是只执行了你需要的那条语句 。
  2. 有的持久层框架采用linq的语法来写sql , 程序中不方便输出sq语句
  3. 线上运行的程序,没有办法更改程序。但需要确认问题出错在哪里?执行了哪些sql语句。可以根据sql 语句来判断 出错的地方。

如何在mysql中监控sql语句?

默认mysql是不开启的sql语句监控的,当需要开启的时候 ,执行以下命令。

SHOW VARIABLES LIKE "general_log%"; -- off 是关闭,如果是on表示已经开启
SET GLOBAL general_log = 'ON'; --开启日志监控。
​

我是已经开启的状态 ,如果没有开启的时候 ,general_log 是显示的off .

如下图所示 ,会看到日志默认保存的路径 位置

C:ProgramDataMySQLMySQL Server 5.5Datahcb-PC.log

接下来我们执行几条sql语句来查看

执行sql

SELECT * FROM `platform`
UPDATE `platform` SET platform_type=2 WHERE id=1

接下来我们去看下日志

可以看到日志中包含了

Time                 Id Command    Argument

分别对应时间 ,id, 命令, 参数

参数指的就是执行的sql语句。

如何让mysql中的sql语句显示在表中

在日志中查看不方便 ,如果让sql语句显示在数据库中的一个表中?

执行如下sql

SET GLOBAL log_output = 'TABLE';
SELECT * FROM mysql.general_log ORDER BY  event_time DESC

用processlist显示

USE `information_schema`;
SELECT * FROM PROCESSLIST WHERE info IS NOT NULL;
​

具说这种方式可以实时显示,但是我的不知道为啥不能实时显示新的sql 先记录一下。

oracle语句转成mysql语句_如何监控Mysql语句相关推荐

  1. jdbc和mysql客户端_相同的insert语句在JDBC中报错,在mysql客户端中不报错:

    java部分代码:sql="insertintotao_user(user_email,user_qq,user_id,user_name,user_password,user_imagep ...

  2. 怎么重启网站mysql数据库_如何重启MySQL数据库服务

    服务器的启动和停止 停止:net stop mysql 启动:net start mysql -------------------------mysql mode相关问题-------------- ...

  3. 简单mysql 查询_简单的mysql查询

    mysql是基于客户机-服务器的数据库.客户机-服务器应用分为两个不同的部分.服务器部分是负责所有数据访问和处理的一个软件. 连接mysql 要连接mysql需要知道如下 主机名: 本地为localh ...

  4. mysql猎豹_猎豹网校MySQL数据库

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 猎豹网校MySQL数据库 链接:http://pan.baidu.com/s/1i3wyPjn 密码:qxhm 教程目录 第1章 了解SQL 1.1 数据 ...

  5. mysql 排名_学会在MySQL中实现Rank高级排名函数,所有取前几名问题全部解决.

    MySQL中没有Rank排名函数,当我们需要查询排名时,只能使用MySQL数据库中的基本查询语句来查询普通排名.尽管如此,可不要小瞧基础而简单的查询语句,我们可以利用其来达到Rank函数一样的高级排名 ...

  6. mysql关系数据库_关系型数据库MySql简介

    什么是关系型数据库? 数据库就是用来存储数据的仓库,是一种特殊的文件. 根据存储的数据不同,划分为关系型数据库和非关系型数据库. 关系型数据库就是指 建立在关系模型基础上的数据库,通俗来讲这种数据库就 ...

  7. 支付宝的数据库是MySQL变种_浅谈MySql的储存引擎(表类型)

    浅谈mysql的存储引擎(表类型) 什么是MySql数据库 通常意义上,数据库也就是数据的集合,具体到计算机上数据库可以是存储器上一些文件的集合或者一些内存数据的集合. 我们通常说的MySql数据库, ...

  8. mysql 全局变量_详细讲解mysql全局变量与局部变量

    通常在服务器启动时,会将每个全局变量初始化为其默认值(我们可以通过命令行或选项文件中指定的选项更改这些默认值),然后服务器还为每个连接的客户端维护一组会话变量,客户端的会话变量在连接时使用相应全局变量 ...

  9. linux c mysql 封装_本人对MYSQL C API做的一个封装,希望对linux C++程序员有点帮助,同时欢迎拍砖!...

    本人对MYSQL  C API做的一个封装,使用很简单,构造一个对象,就可直接执行SQL,但对于需返回结果的查询语句,对其数据集没做封装,仍需直接调用mysql c api对其进行处理,本人将下次完成 ...

最新文章

  1. 【0ms优化】剑指 Offer 18. 删除链表的节点
  2. python调用libvirt_通过python获取kvm虚拟机的监控信息(基于libvirt API)
  3. 【POJ - 2785】4 Values whose Sum is 0 (二分,折半枚举)
  4. python字典导入mongodb_Python语言生成内嵌式字典(dict)-案例从python提取内嵌json写入mongodb...
  5. 仿哔哩哔哩出错404错误页面源码
  6. 邂逅StringIndexOutOfBoundsException
  7. 软工小学期实践PART ONE
  8. 使用TopShelf做windows服务
  9. 【Swift】iOS UICollectionView 计算 Cell 大小的陷阱
  10. 【操作系统】时间片轮转调度法
  11. win10+ubuntu配置双系统
  12. AutoCAD 命令定义
  13. Java入门 J2SE
  14. 解决Error response from daemon: conflict: unable to delete bf6a13bd36ca (must be forced)
  15. ML笔记:预训练(pre-training/trained)与微调(fine tuning)
  16. 如何让学习像打游戏一样具有成瘾性
  17. Springboot毕设项目基于SpringBoot的学生宿舍水电费缴费系统的设计与实现2py81(java+VUE+Mybatis+Maven+Mysql)
  18. 文件13:文件路径-路径文件删改方法
  19. linux如何查看无线密码是多少个,在 Linux 中查看连接过的 WiFi 密码
  20. 零基础PS----制作不一样的个人简历

热门文章

  1. hdu 3671 Boonie and Clyde
  2. 最佳适应算法模拟内存分配
  3. k3s文档:中文文档地址
  4. Scala类中的+方法
  5. spring boot整合freemarker及freemarker基础语法超详细讲解
  6. php xml expat,PHP Expat :XML的解析器
  7. 测试nb信号的软件_NB-IoT和LORA,谁才是真正的低功耗?从数据看真相
  8. 在eclipse中如何查看JAVA JDK的源代码
  9. WebService入门讲解
  10. 8086逻辑运算和移位