操作系统为ubuntu 16.04
MySQL版本:MySQL Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper
在我的系统中
/etc/mysql/ -> ls
conf.d debian.cnf debian-启动my.cnf my.cnf.fallback mysql.cnf mysql.conf.d
在该文件中,我需要配置以获取通用查询日志和慢查询日志。
我看到有一个很好的选项,如何启用日志慢查询和没有索引的查询:
SET GLOBAL log_queries_not_using_indexes=1;
SET GLOBAL log_slow_queries=1;
好的,好的,但是它们似乎都写入了我在my.cnf配置文件中指定的同一个日志文件:
[mysqld]
long_query_time = 1
log-slow-queries = /var/log/mysql/mysql-slow.log
我使用mysqldumpslow查看最慢的查询,但是我需要做什么才能单独查看那些没有索引的查询呢?
背景: MySQL 5.7,InnoDB引擎
我们有一个巨大的事务日志表(每天新增600万行),我们希望将这个巨大的表分割成多个mysql实例和表(所以我们有table_001、table_002等)。用户经常查询最近的行,这意味着最近的行是热的,而旧的行是冷的。
我想知道在这种情况下,是否仍然需要在每个分割表(table_001、table_002等)中使用mysql分区。我的意见是没有。如果我们已经将数据分成了许多子表,为什么我们还需要使用分区的另一种子表呢?(分区实际上在内部是单独的表,对吗?)