mysqltuner工具使用,本工具建议定期运行,发现目前MYSQL数据库存在的问题及修改相关的参数

工具的下载及部署

解决环境依赖,因为工具是perl脚本开发的,需要perl脚本环境

# yun install -y perl*

下载脚本

在http://mysqltuner.com/下载major-MySQLTuner-perl-1.6.0-142-g42593c6.zip



将下载的mysqltuner.pl文件上传到需要测试的mysql服务器中

# chmod +x mysqltuner.pl

执行脚本

# ./mysqltuner.pl

根据提示输入管理员账号密码,得出建议:





报错



# ./mysqltuner.pl 

 >>  MySQLTuner 1.6.9 - Major Hayden <major@mhtx.net>

 >>  Bug reports, feature requests, and downloads at http://mysqltuner.com/

 >>  Run with '--help' for additional options and output filtering

which: no mysqladmin in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)

[!!] Couldn't find mysqladmin in your $PATH. Is MySQL installed?



添加环境变量

# vi /etc/profile.d/mysql.sh

加入

export PATH=/opt/lampp/bin:$PATH





>>  MySQLTuner 1.6.9 - Major Hayden <major@mhtx.net>

 >>  Bug reports, feature requests, and downloads at http://mysqltuner.com/

 >>  Run with '--help' for additional options and output filtering

Please enter your MySQL administrative login: root200

Please enter your MySQL administrative password: 

[--] Skipped version check for MySQLTuner script

[!!] Your MySQL version 5.0.67 is EOL software!  Upgrade soon!

[OK] Operating on 64-bit architecture





-------- Storage Engine Statistics -------------------------------------------

[--] Status: +Archive -BDB +Federated +InnoDB -ISAM -NDBCluster 

[--] Data in MyISAM tables: 8G (Tables: 448)

[--] Data in InnoDB tables: 320K (Tables: 2)

[--] Data in MEMORY tables: 1M (Tables: 4)

[!!] Total fragmented tables: 42





-------- Security Recommendations  -------------------------------------------

[OK] There are no anonymous accounts for any database users

[!!] failed to execute: SELECT CONCAT(user, '@', host) FROM mysql.user WHERE (password = '' OR password IS NULL) AND plugin NOT IN ('unix_socket', 'win_socket')

[!!] FAIL Execute SQL / return code: 256

[OK] All database users have passwords assigned

[!!] User 'em@%' hasn't specific host restriction.

[!!] User 'huhonggen@%' hasn't specific host restriction.

[!!] User 'rone@%' hasn't specific host restriction.

[!!] There is no basic password file list!





-------- CVE Security Recommendations  ---------------------------------------

[--] Skipped due to --cvefile option undefined





-------- Performance Metrics -------------------------------------------------

[--] Up for: 13h 30m 47s (81M q [1K qps], 39K conn, TX: 1G, RX: 1G)

[--] Reads / Writes: 95% / 5%

[--] Binary logging is disabled

[--] Total buffers: 4.3G global + 48.3M per thread (1500 max threads)

[!!] Maximum reached memory usage: 31.4G (100.18% of installed RAM)

[!!] Maximum possible memory usage: 75.1G (239.73% of installed RAM)

[OK] Slow queries: 0% (144/81M)

[OK] Highest usage of available connections: 38% (574/1500)

[!!] Aborted connections: 6.73%  (2688/39922)

[OK] Query cache efficiency: 63.4% (49M cached / 78M selects)

[!!] Query cache prunes per day: 149286

[OK] Sorts requiring temporary tables: 0% (97 temp sorts / 862K sorts)

[OK] Temporary tables created on disk: 13% (46K on disk / 347K total)

[OK] Thread cache hit rate: 98% (643 created / 39K connections)

[OK] Table cache hit rate: 99% (1K open / 1K opened)

[OK] Open file limit used: 13% (1K/7K)

[OK] Table locks acquired immediately: 98% (35M immediate / 36M locks)





-------- ThreadPool Metrics --------------------------------------------------

[--] ThreadPool stat is disabled.





-------- Performance schema --------------------------------------------------

[--] Performance schema is disabled.





-------- MyISAM Metrics ------------------------------------------------------

[!!] Key buffer used: 40.7% (1B used / 4B cache)

[OK] Key buffer size / total MyISAM indexes: 4.0G/3.9G

[OK] Read Key buffer hit rate: 100.0% (1B cached / 373K reads)

[!!] Write Key buffer hit rate: 83.9% (2M cached / 344K writes)





-------- AriaDB Metrics ------------------------------------------------------

[--] AriaDB is disabled.





-------- InnoDB Metrics ------------------------------------------------------

[--] InnoDB is enabled.

[OK] InnoDB buffer pool / data size: 128.0M/320.0K

[!!] InnoDB Used buffer: 0.78% (64 used/ 8192 total)

[OK] InnoDB Read buffer efficiency: 93.93% (201 hits/ 214 total)

[!!] InnoDB Write Log efficiency: 0% (-1 hits/ 0 total)

[OK] InnoDB log waits: 0.00% (0 waits / 1 writes)





-------- TokuDB Metrics ------------------------------------------------------

[--] TokuDB is disabled.





-------- Galera Metrics ------------------------------------------------------

[--] Galera is disabled.





-------- Replication Metrics -------------------------------------------------

[--] No replication slave(s) for this server.

[--] This is a standalone server..

针对给出的意见进行修改

-------- Recommendations -----------------------------------------------------

General recommendations:

    Run OPTIMIZE TABLE to defragment tables for better performance

    Restrict Host for user@% to user@SpecificDNSorIp

    MySQL started within last 24 hours - recommendations may be inaccurate

    Reduce your overall MySQL memory footprint for system stability

    Enable the slow query log to troubleshoot bad queries

    Reduce or eliminate unclosed connections and network issues

    Increasing the query_cache size over 128M may reduce performance

    Upgrade to MySQL 5.5+ to use asynchrone write

Variables to adjust:

  *** MySQL's maximum memory usage is dangerously high ***

  *** Add RAM before increasing MySQL buffer variables ***

query_cache_size (> 128M) [see warning above]

注意:

浏览输出的结果,特别是末尾的 Recommendations ,里面一般会提到您需要在 my.cnf 修改的内容。修改 my.cnf 后记得重启 MySQL 。重启后再运行 MySQLTuner 检查。另外需要注意的是 MySQL 需要启动 24 小时候再运行 MySQLTuner ,不然有些内容会不准。

利用mysqltuner工具对mysql数据库进行优化的更多相关文章

  1. MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库【转载】

    转自 MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库 - _安静 - 博客园http://www.cnblogs.com/xionghui/archive/2012/ ...

  2. MySQL数据库性能优化与监控实战(阶段四)

    MySQL数据库性能优化与监控实战(阶段四) 作者 刘畅 时间 2020-10-20 目录 1 sys数据库 1 2 系统变量 1 3 性能优化 1 3.1 硬件层 1 3.2 系统层 1 3.3 软 ...

  3. mysql数据库性能优化(包括SQL,表结构,索引,缓存)

    优化目标减少 IO 次数IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当 ...

  4. MySQL数据库性能优化:表、索引、SQL等

    一.MySQL 数据库性能优化之SQL优化 注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需要有一些索引知识为基础 优化目标 减少 IO 次数IO永远是数据库最容易瓶颈的地 ...

  5. MYSQL数据库的优化

    我们究竟应该如何对MySQL数据库进行优化?下面我就从MySQL对硬件的选择.MySQL的安装.my.cnf的优化.MySQL如何进行架构设计及数据切分等方面来说明这个问题. 服务器物理硬件的优化 在 ...

  6. [转]MySQL数据库的优化-运维架构师必会高薪技能,笔者近六年来一线城市工作实战经验

    本文转自:http://liangweilinux.blog.51cto.com/8340258/1728131 年,嘿,废话不多说,下面开启MySQL优化之旅! 我们究竟应该如何对MySQL数据库进 ...

  7. MySQL 数据库性能优化之索引优化

    接着上一篇 MySQL 数据库性能优化之表结构,这是 MySQL数据库性能优化专题 系列的第三篇文章:MySQL 数据库性能优化之索引优化 大家都知道索引对于数据访问的性能有非常关键的作用,都知道索引 ...

  8. MySQL数据库的优化-运维架构师必会高薪技能,笔者近六年来一线城市工作实战经验

    原文地址:http://liangweilinux.blog.51cto.com/8340258/1728131 首先在此感谢下我的老师年一线实战经验,我当然不能和我的老师平起平坐,得到老师三分之一的 ...

  9. Mysql数据库性能优化(一)

    参考 http://www.jb51.net/article/82254.htm 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要 ...

随机推荐

  1. Python使用TCPServer编写(多线程)Socket服务

    SocketServer包对socket包进行了包装(封装),使得创建socket服务非常简单. TCPServer+BaseRequestHandler 使用TCPServer和BaseReques ...

  2. k8s部署prometheus

    https://www.kancloud.cn/huyipow/prometheus/527092 https://songjiayang.gitbooks.io/prometheus/content ...

  3. Jenkins-Pipeline 流水线发布部署项目

    node { sh 'mkdir -p cms' dir('cms') { git branch: 'prerelease', credentialsId: '5fb79ef0-4301-4b7c-a ...

  4. Cotex-M4简介

    ARM Cortex™-M4 处理器是由 ARM 专门开发的最新嵌入式处理器,用以满足需要有效且易于使用的控制和信号处理功能混合的数字信号控制市场. 高效的信号处理功能与 Cortex-M 处理器系列 ...

  5. ElasticSearch 之 dis_max tie_break的应用

    1. 插入数据 PUT /my_index/my_type/ { "title": "Quick brown rabbits", "body" ...

  6. Java基础-考察JVM内部结构的常用工具介绍

    Java基础-考察JVM内部结构的常用工具介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们可以通过jvisualvm.exe考察jvm内部结构.而jvisualvm.exe ...

  7. 6、JDBC-处理CLOB与BLOB

    Blob 是一个二进制大型对象(文件),在MySQL中有四种 Blob 类型,区别是容量不同 TinyBlob 255B Blob 65KB MediumBlob 16MB LongBlob 4GB ...

  8. Docker 入门 第三部分: 服务

    目录 Docker 入门 第三部分: 服务 先决条件 介绍 你的第一个 docker-compose.yml 文件 docker-compose.yml 运行你新建的负载均衡应用 扩展应用程序 卸载应 ...

  9. oracle乱码记录

    plsql中显示正常,查询到的结果乱码 1.获得服务端编码 select * from nls_database_parameters where parameter ='NLS_CHARACTERS ...

  10. webkitAnimationEnd事件与webkitTransitionEnd事件

    写一个焦点图demo,css3动画完成以后要把它隐藏掉,这里会用到css3的事件,以前没有接触过,结果查了一下发现这是一片新天地啊,而且里面还有好多坑,比如重复动画多次触发什么的.anyway,我还是 ...