如何开启mysql的慢查询

如何开启mysql的慢查询

Linux查看mysql 安装路径 一、查看文件安装路径 由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址)。 这里以mysql为例。比如说我安装了mysql,但是不知道文件都安装在哪些地方、放在哪些文件夹里,可以用下面的命令查看所有的文件路径 在终端输入: whereis mysql 回车,如果你安装好了mysql,就会显示文件安装的地址,例如我的显示(安装地址可能会不同)

  1. [root@localhost ~]# whereis mysql
  2. mysql: /usr/bin/mysql /usr/lib/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

复制代码

二、查询运行文件所在路径(文件夹地址) 如果你只要查询文件的运行文件所在地址,直接用下面的命令就可以了(还是以mysql为例): which mysql 终端显示: [root@localhost ~]# which mysql /usr/bin/mysql 方法一:修改mysql的my.cnf文件 Linux: 在mysql配置文件/etc/my.cnf中[mysqld]选项下增加: vi /etc/my.cnf log-slow-queries=/usr/local/mysql/slowquery.log (指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log) long_query_time=1 (记录超过的时间,默认为10s) log-queries-not-using-indexes (log下来没有使用索引的query,可以根据情况决定是否开启) log-long-format (如果设置了,所有没有使用索引的查询也将被记录) Windows: 在my.ini的[mysqld]添加如下语句: log-slow-queries = D:\www\mysql\log\mysqlslowquery.log long_query_time = 1(其他参数如上) 保存后重启mysql即可加载配置 注意 log-slow-queries=/usr/local/mysql/slowquery.log 为慢查询日志存放的位置,一般这个目录要有MySQL的运行帐号的可写权限,一般都将这个目录设置为MySQL的数据存放目录; long_query_time=1中的1表示查询超过两秒才记录; 方法二:命令方式 cd /usr/local/mysql/bin mysql -u root -p enter password mysql> show variables like ”%long%”; //查看一下默认为慢查询的时间10秒 +—————–+———–+ | Variable_name | Value | +—————–+———–+ | long_query_time | 10.000000 | +—————–+———–+ 1 row in set (0.00 sec) mysql> set global long_query_time=2; //设置成2秒,加上global,下次进mysql已然生效 Query OK, 0 rows affected (0.00 sec) mysql> show variables like ”%slow%”; //查看一下慢查询是不是已经开启 +———————+———————————+ | Variable_name | Value | +———————+———————————+ | log_slow_queries | OFF | | slow_launch_time | 2 | | slow_query_log | OFF | | slow_query_log_file | /usr/local/mysql/mysql-slow.log | +———————+———————————+ 4 rows in set (0.00 sec) mysql> set slow_query_log=’ON’; //加上global,不然会报错的。 ERROR 1229 (HY000): Variable ’slow_query_log’ is a GLOBAL variable and should be set with SET GLOBAL mysql> set global slow_query_log=’ON’; //启用慢查询 Query OK, 0 rows affected (0.28 sec) mysql> show variables like ”%slow%”; //查看是否已经开启 +———————+———————————+ | Variable_name | Value | +———————+———————————+ | log_slow_queries | ON | | slow_launch_time | 2 | | slow_query_log | ON | | slow_query_log_file | /usr/local/mysql/mysql-slow.log | +———————+———————————+ 4 rows in set (0.00 sec)

来源: <http://www.cnblogs.com/zhangjing0502/archive/2012/07/30/2615570.html>