select @@profiling -- 看看当前的session的profiling打开没有 set profiling = 1 -- 如果没打开,打开一下 -- 执行一些sql select count(*) ... select * from ... show profiles -- 查看所有已执行的profile show profile for query 2 -- 看看刚才某条sql执行的具体时间拆分,2是个某个query id show profile cpu for query…
我们时常会有查看MySQL服务端执行的SQL记录.在MySQL5.1之后提供了支持,通过在启动时加入-l 或者--log选项即可: mysqld -l mysqld --log 在后面的版本(5.1.2)中开始改用--general_log: mysqld --general_log 开启后会在数据目录下看到生成一个日志文件,默认格式为:主机名.log 可在配置文件中设置开启日志: [mysqld] general_log = general_log_file = /path/to #日志文件…
SQL优化 MySQL版  - 索引分类.创建方式.删除索引.查看索引.SQL性能问题 作者 Stanley 罗昊 [转载请注明出处和署名,谢谢!] 索引分类 单值索引 单的意思就是单列的值,比如说有一张数据库表,表内有三个字段,分别是 id name age,我给age这个字段加一个索引,这就是单值索引,因为只有age这一列是索引: 一个表可以有多个单值索引,我不光可以设置age,我也可以吧name设置成索引,或许更多: 唯一索引 顾名思义,就是不能重复,比如age就不能被设置为唯一索引,因为…
http://qq85609655.iteye.com/blog/2113960 1)我们先通过status命令查看Mysql运行状态 mysql> status; -------------- mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1 Connection id: 113752 Current database: information_schema Current user…
查看SQL语句执行时间与测试SQL语句性能 写程序的人,往往需要分析所写的SQL语句是否够优化.是否能提升执行效率,服务器的响应时间有多快,这个时候就需要用到SQL的STATISTICS状态值来查看了. 通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME.介绍如下: SET STATISTICS PROFILE ON:显示分析.编译和执行查询所需的时间(以毫秒为单位). SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数…
mysql查看正在执行的sql语句 2015年08月21日 17:32:59 阅读数:15398   有2个方法: 1.使用processlist,但是有个弊端,就是只能查看正在执行的sql语句,对应历史记录,查看不到.好处是不用设置,不会保存. -- use information_schema; -- show processlist; 或者: -- select * from information_schema.`PROCESSLIST` where info is not null;…
我们可以在mysql的安装目录下看到mysql的二进制日志文件,如mysql-bin.000***等,很多人都不及时的处理,导致整个硬盘被塞满也是有可能的.这些是数据库的操作日志.它记录了我们平时使用的sql语句命令,即使这个sql语句没有被执行,也会被记录,它包括执行时间之类的都详细在案,其实 它的目的有两个:一是方便我们查错和恢复数据库:二是为了主从服务器之间同步数据用的,主从服务器上所有操作都记录在日志里,从服务器可以根据这些日志来进行相同的操作,确保主从两个同步. 关键词: mysql…
最近生产环境有一些查询较慢,需要优化,于是先进行业务确认查询条件是否可以优化,不行再进行sql优化,于是学习了下Mysql查看执行计划. 语法 explain <sql语句>  例如: explain select * from t3 where id=3952602; explain输出解释 +----+-------------+-------+-------+-------------------+---------+---------+-------+------+-------+|…
mysql查看数据库和表的占用空间大小   第一部分-任务 将线上db,导出后,导入到office db 一. 两种方案: 1,将数据直接从online-->office,通过mysqldump 通过本地putty等和ecs建隧道,然后传数据到本地.(本地win可以按照gzip,压缩后传到office server) 2,先在ecs上mysqldump压缩,然后下载下来 下载方案: 1,rsync daemon 2,rsync ssh 3,scp 4,sz <----这种速度较快,前三者都差不…
程序开发少不来SQL,基本都是基于SQL开发,程序仅仅起一个流程控制的作用.但是数据库本身存在许多内置的视图或者内置的表,如果打算研究SQL执行的效率已经SQL执行的历史记录,通过这些视图可以知道. SQLSERVER,Oracle,MySQL都有内置视图 http://www.cnblogs.com/net2012/archive/2013/01/21/2869636.html [总结] 查看v$sqlarea只能查看粗略的历史,因为很多SQL是共享的. 查看ASH也不全,因为这是采样数据,测…