mysql静态变量配置

阅读更多

mysql配置大部分可以直接执行命令动态配置,适用于不能重启mysql情况,比如线上服务器不能轻易重启,但是之后重启后配合 失效,还有一种就是直接修改配置文件,需要重启mysql后配置永久有效。

 

1、开启general_log :

 

在mysql命令行或者客户端管理工具中执行:SHOW VARIABLES LIKE "general_log%";

 

结果:

 

                general_log OFF

                general_log_file /var/lib/mysql/localhost.log

 

OFF说明没有开启日志记录

 

分别执行开启日志以及设置日志路径和日志文件名

 

            SET GLOBAL general_log_file = '/var/lib/mysql/localhost.log';

            SET GLOBAL general_log = 'ON';

 

还要注意,这时执行的所有sql都会别记录下来,方便查看,但是如果重启mysql就会停止记录需要重新设置

 

            SHOW VARIABLES LIKE "log_output%";如果是NONE,说明不输出,如果是file就是输出到日志文件,如果是table就是输出到mysql库中的general_log表中,这个按需配置,设置方式:

 

            SET GLOBAL log_output='TABLE,FILE'

 

2、开启开启慢查询

 

mysql> show variables like 'slow_query%';

+---------------------------+----------------------------------+

| Variable_name             | Value                            |

+---------------------------+----------------------------------+

| slow_query_log            | OFF                              |

| slow_query_log_file       | /mysql/data/localhost-slow.log   |

+---------------------------+----------------------------------+

 

mysql> show variables like 'long_query_time';

+-----------------+-----------+

| Variable_name   | Value     |

+-----------------+-----------+

| long_query_time | 10.000000 |

 

+-----------------+-----------+

 

1.直接修改配置文件:

 

            slow-query-log=1 --开启慢查询

            slow_query_log_file="103-54-slow.log" --慢查询日志文件名,默认跟data目录相同路径

 

            long_query_time=1 --超过1s认为是慢查询

 

重启mysql服务

 

2.设置全局变量:

 

将 slow_query_log 全局变量设置为“ON”状态

mysql> set global slow_query_log='ON'; 

 

设置慢查询日志存放的位置

mysql> set global slow_query_log_file='/usr/local/mysql/data/slow.log';

 

查询超过1秒就记录

mysql> set global long_query_time=1;

 

3、开启未使用索引SQL过滤配置:

show variables like 'log_queries_not_using_indexes%';         

 

+-----------------+---------------------+

| Variable_name   |        --    Value     |

+-----------------+----------------------+

| log_queries_not_using_indexes| ON |

 

+-----------------+-----------------------+

 

 

 

修改全局变量:set global log_queries_not_using_indexes =1;

直接在配置文件中添加这一行就行或者: log_queries_not_using_indexes =1

 

重启mysql 。

 

你可能感兴趣的:(mysql静态变量配置)