MySQL 查看执行的SQL记录

我们时常会有查看MySQL服务端执行的SQL记录。在MySQL5.1之后提供了支持,通过在启动时加入-l 或者--log选项即可:

mysqld -l
mysqld --log

在后面的版本(5.1.2)中开始改用--general_log:

mysqld --general_log

开启后会在数据目录下看到生成一个日志文件,默认格式为:主机名.log

可在配置文件中设置开启日志:

[mysqld]
general_log = 1
general_log_file = /path/to #日志文件

实时开关日志,可通过在命令行:

开启:

SET GLOBAL general_log = ‘ON‘;

关闭:

SET GLOBAL general_log = ‘OFF‘;
时间: 2024-11-09 17:03:30

MySQL 查看执行的SQL记录的相关文章

mysql查看执行sql语句的记录日志

1.使用processlist,但是有个弊端,就是只能查看正在执行的sql语句,对应历史记录,查看不到.好处是不用设置,不会保存. -- use information_schema; -- show processlist; 或者: -- select * from information_schema.`PROCESSLIST` where info is not null; 2.开启日志模式 -- 1.设置 -- SET GLOBAL log_output = 'TABLE';SET GL

查看Mysql实时执行的Sql语句

最近给客户开发了基于Asp.Net mvc5 +Mysql+EF的项目,但是在EF里无法看到Mysql执行的语句 之前也找到一些监控Mysql的软件但一直没有用起来,现在又遇到了问题即在EF里Mysal的查询没有结果而在Mysql里没有问题 因为不知道EF生成的Mysql语句所以不知道是不是Sql的问题于是决定必须解决此问题 通过半天时间的努力解决了此问题,其实很简单即开启Mysql的Log功能,那么Mysql的执行语句都会写到Log文件里 然后通过BareTail这个专门查看Log文件的工具即

laravel中查看执行的SQL语句

今天想查看laravel框架中执行的SQL语句,百度了一圈,才找到,这文档真心看着不爽,下面上查看方法 DB::connection()->enableQueryLog(); $navObj = new NavModel(); $data = $navObj->where($where)->select($this->field)->orderBy('id', 'desc') ->get(); $log = DB::getQueryLog(); dd($log); di

Mysql:执行source sql脚本时,出现:error 2

Centos下部署mysql: 1.yum -y install mysql*; 2.service mysqld start; 3.chkconfig mysqld on; 4.设置用户名和密码:mysqladmin -uroot password123456 5.进入数据库:mysql -uroot -p 回车后,输入设置的密码 6.建立数据库:create database 数据库名; 7.切换到要使用的数据库 8.导入已写好的Sql:source  绝对路径/XX.sql; 这时,如果出

Django 之 查看执行的sql语句

前提: 我的app名称为core,models.py内容如下: # coding:utf-8 from django.db import models # Create your models here. class Province(models.Model): name = models.CharField(u'省份名称',max_length=32) code = models.IntegerField(verbose_name=u'区号', unique=True) def __unic

Mysql查看数据库对象(SQL命令总结)

数据的对象包括表,视图,触发器,等等(查看统计信息的必须进入information_schema 数据库) 举例查看表相关的信息,步骤如下 1.使用information_schema 数据库 use information_schema; 2.查询所有数据的大小(MB): select concat(round(sum(data_length/1024/1024),2),'MB') as data_size from tables; 3.查看指定数据库(schema)的大小(MB): sele

laravel如何输出最后一条执行的SQL

\DB::connection()->enableQueryLog(); // 开启查询日志 \DB::table('xxx'); // 要查看的sql $queries = \DB::getQueryLog(); // 获取查询日志 print_r($queries); // 即可查看执行的sql,传入的参数等等 原文地址:https://www.cnblogs.com/qxandxt/p/10876292.html

DBMS_XPLAN Package来查看执行计划

查看执行计划除了AUTOTRACE的方法外,还可以使用DBMS_XPLAN Package来查看 1.执行"explain Plan"语法:SQL> Explain plan forTry this command:SQL> explain plan for select * from mtl_system_items_b where inventory_item_id = 149 and organization_id = 207;Explained这个命令会产生执行计划

MySql使用show processlist查看正在执行的Sql语句

今天上班例行的查看了下服务器的运行状况,发现服务器特卡,是mysqld这个进程占用CPU到了99%导致的. 比较好奇是那个程序在使用mysql导致cpu这么高的,通过show processlist命令查看了当前正在执行的sql语句,从而定位到了对应的程序,发现代码中有一个死循环在不停的查询导致cpu占用99%,原因找到了问题就好解决了. 这里简单的记录一下processlist的用法: processlist 命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,两种方式使用这