1.slow_log 慢日志
1.1 作用:
记录慢SQL语句的日志,定位低效SQL语句的工具日志
1.2 开启慢日志(默认没开启)
开关:
slow_query_log=1
文件位置及名字
slow_query_log_file=/data/mysql/slow.log
设定慢查询时间:
long_query_time=0.1
没走索引的语句也记录:
log_queries_not_using_indexes
vim /etc/my.cnf
slow_query_log=1
slow_query_log_file=/data/mysql/slow.log
long_query_time=0.1
log_queries_not_using_indexes
systemctl restart mysqld
1.3 mysqldumpslow 分析慢日志
mysqldumpslow -s c -t 10 /data/mysql/slow.log
-s 排序
-c 次数
-t top 10
# 第三方工具(自己扩展)
https://www.percona.com/downloads/percona-toolkit/LATEST/
yum install perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL perl-Digest-MD5
toolkit工具包中的命令:
./pt-query-diagest /data/mysql/slow.log
Anemometer基于pt-query-digest将MySQL慢查询可视化
2. 数据库中数据导出:
select c1,c2,c3 from tablename into outfile '/xx/xx/xx.sql'
以上命令会把查到的所有信息输入到指定的文件中,而不是输出到屏幕了。
my.cnf配置文件中加入
secure-file-priv='空或指定一个路径'
如果没有该配置参数,在使用导出语句时会检查要导出的路径是否安全,安全是怎么定义的?
.