pt-variable-advisor¶
的名字¶
pt-variable-advisor——分析MySQL变量和可能出现的问题提出建议。
剧情简介¶
使用¶
pt- - - - - -变量- - - - - -顾问(选项](DSN]
pt-variable-advisor分析变量和可能出现的问题提出建议。
从本地主机获取显示变量:
pt-variable-advisor本地主机
显示变量输出保存在vars.txt:
pt-variable-advisor——source-of-variablesvars.txt
风险¶
雷竞技下载官网Percona工具包已经成熟,证明在现实世界中,和很好的测试,但所有数据库工具可以对系统和数据库服务器构成风险。在使用这个工具之前,请:
阅读工具的文档
检查工具的“错误”
非生产服务器上测试工具
备份您的生产服务器和验证备份
描述¶
pt-variable-advisor检查显示变量坏的价值观和设置根据下面描述的“规则”。它报告变量匹配的规则,所以你可以找到坏设置在您的MySQL服务器。
这个版本的时候,pt-variable-advisor只检查显示变量,但其它输入源计划显示状态和显示奴隶状态。
规则¶
这些规则pt-variable-advisor将适用于显示变量。每一个规则都有三个部分:一个ID,严重程度和描述。
规则的ID是一个短,独特规则的名称。它通常涉及到的变量规则检查。如果一个变量检查几个规则,规则的id编号“1”、“2”、“n”。
规则的严重程度是一个指示是多么重要,这条规则匹配查询。我们使用注意、警告和暴击来表示这些水平。
规则的描述是一个文本,人类可读的解释变量匹配此规则时意味着什么。根据冗长的报告生成,您将看到更多的文本描述。默认情况下,你只会看到第一句话,这是一种简短的概要的规则的意思。在更高的冗长,您将看到后续的句子。
auto_increment
严重性:注意
你想写在两个主或环多个服务器复制配置?这可能是非常危险的,在大多数情况下是一个严重的错误。大多数人的理由这样做实际上是无效的。
concurrent_insert
严重性:注意
MyISAM表中留下的洞(空格删除)可能永远不会被重用。
connect_timeout
严重性:注意
一个较大的值,此设置可以创建一个拒绝服务漏洞。
调试
严重性:暴击
服务器建立与调试能力不应使用在生产中,因为大的性能影响。
delay_key_write
严重性:警告
MyISAM永远不会刷新,直到必要的索引块。如果服务器崩溃,数据损坏MyISAM表上可以比平时更糟。
冲洗
严重性:警告
此选项可能会大大降低性能。
flush_time
严重性:警告
此选项可能会大大降低性能。
have_bdb
严重性:注意
BDB引擎是弃用。如果你不使用它,您应该禁用skip_bdb选项。
init_connect
严重性:注意
这个服务器上启用init_connect选项。
init_file
严重性:注意
这个服务器上启用init_file选项。
init_slave
严重性:注意
这个服务器上启用init_slave选项。
innodb_additional_mem_pool_size
严重性:警告
这个变量通常不需要超过20 mb。
通过innodb_buffer_pool_size
严重性:警告
InnoDB缓冲池大小应取消。在生产环境中,应该明确配置,默认10 mb大小并不是很好。
innodb_checksums
严重性:警告
InnoDB的校验和是禁用的。你的数据不受硬件腐败或其他错误!
innodb_doublewrite
严重性:警告
InnoDB doublewrite是禁用的。除非你使用一个文件系统,防止部分页写道,你的数据是不安全的!
innodb_fast_shutdown
严重性:警告
InnoDB的关闭行为不是默认。这可能会导致糟糕的性能,或者需要执行崩溃恢复启动。
innodb_flush_log_at_trx_commit-1
严重性:警告
InnoDB不是严格酸中配置模式。如果发生了车祸,一些交易可能会丢失。
innodb_flush_log_at_trx_commit-2
严重性:警告
innodb_flush_log_at_trx_commit设置为0没有性能优势在设置为2,和更多类型的数据是可能的损失。如果你想改变它从1由于性能的原因,您应该将其设置为2,而不是0。
innodb_force_recovery
严重性:警告
InnoDB在强迫恢复模式!这应该只是暂时使用恢复数据损坏或其他缺陷,不是正常使用。
innodb_lock_wait_timeout
严重性:警告
这个选项有异常长的值,这可能会导致系统过载如果锁才会被公布。
innodb_log_buffer_size
严重性:警告
InnoDB日志缓冲区大小一般不应超过16 mb。如果你在做大团操作,InnoDB的引擎并不是一个好的选择。
innodb_log_file_size
严重性:警告
InnoDB日志文件大小设置为默认值,而不是在生产系统上可用。
innodb_max_dirty_pages_pct
严重性:注意
innodb_max_dirty_pages_pct低于默认值。这可能会导致过度积极的冲洗和添加加载到I / O系统。
flush_time
严重性:警告
此设置可能会导致非常糟糕的性能每flush_time秒。
key_buffer_size
严重性:警告
缓冲区大小的关键是设置为默认值,这是不利于大多数生产系统。在生产环境中,key_buffer_size应该比默认的8 mb大小。
large_pages
严重性:注意
大页面启用。
locked_in_memory
严重性:注意
与-memlock服务器被锁定在内存中。
log_warnings-1
严重性:注意
Log_warnings是禁用的,所以复制和不寻常的事件如语句不安全流产连接将不会记录到错误日志。
log_warnings-2
严重性:注意
Log_warnings必须大于1设置日志不寻常的事件如中止连接。
low_priority_updates
严重性:注意
服务器正在运行与非锁定优先更新。这可能会导致更新查询出人意料地等待阅读查询。
max_binlog_size
严重性:注意
max_binlog_size小于默认的1 gb。
max_connect_errors
严重性:注意
max_connect_errors应该设置为大平台允许。
max_connections
严重性:警告
如果服务器真的拥有超过一千个线程运行,则系统可能会花更多的时间比真正做有用的工作调度线程。这个变量的值应考虑的工作负载。
myisam_repair_threads
严重性:注意
myisam_repair_threads > 1支持多线程的修复,这是相对未经测试,仍然被列为官方测试版代码文档。
old_passwords
严重性:警告
老式的密码是不安全的。他们发送纯文本的电线。
optimizer_prune_level
严重性:警告
优化器将使用一个详尽的搜索在规划复杂的查询,这可能会导致计划过程需要很长时间。
港口
严重性:注意
服务器正在侦听一个非默认端口。
query_cache_size-1
严重性:注意
查询缓存不扩展到大尺寸和大于128 mb时可能导致不稳定的性能,尤其是在多核机器上。
query_cache_size-2
严重性:警告
查询缓存可以引起严重的性能问题大于256 mb时,尤其是在多核机器上。
read_buffer_size-1
严重性:注意
read_buffer_size变量一般应在其默认除非专家决定有必要改变它。
read_buffer_size-2
严重性:警告
read_buffer_size变量不应大于8 mb。通常应该在其默认除非专家决定有必要改变它。使其显著大于2 mb会损害性能,并可以使服务器崩溃,交换,或只是变得极其不稳定。
read_rnd_buffer_size-1
严重性:注意
read_rnd_buffer_size变量一般应在其默认除非专家决定有必要改变它。
read_rnd_buffer_size-2
严重性:警告
read_rnd_buffer_size变量不应大于4米。通常应该在其默认除非专家决定有必要改变它。
relay_log_space_limit
严重性:警告
设置relay_log_space_limit会导致副本立即停止获取二进制日志从他们的主人。这可能会增加风险,您的数据将丢失,如果主人崩溃。如果副本遇到限制中继日志空间,那么它最新的交易可能只存在于主并没有复制检索它们。
slave_net_timeout
严重性:警告
这个变量设置过高。这是要等太长时间才能注意到连接到主失败了并重新尝试。这可能应该设置为60秒或更少。这也是一个好主意使用pt-heartbeat确保连接没有出现主只是空闲时超时。
slave_skip_errors
严重性:暴击
你不应该设置这个选项。如果复制是有错误,你需要找到原因并解决;很可能你的奴隶的数据不同于主人。你可以找到pt-table-checksum。
sort_buffer_size-1
严重性:注意
sort_buffer_size变量一般应在其默认除非专家决定有必要改变它。
sort_buffer_size-2
严重性:注意
sort_buffer_size变量一般应在其默认除非专家决定有必要改变它。使其显著大于几MB会损害性能,并可以使服务器崩溃,交换,或只是变得极其不稳定。
sql_notes
严重性:注意
这服务器配置不是日志级别警告错误日志。
sync_frm
严重性:警告
最好是设置sync_frm,以便.frm安全文件刷新到磁盘服务器崩溃。
tx_isolation-1
严重性:注意
这个服务器的事务隔离级别非默认。
tx_isolation-2
严重性:警告
大多数应用程序应该使用默认的可重复读事务隔离级别,或者在一些情况下读取提交。
expire_logs_days
严重性:警告
启用二进制日志,但没有启用自动清除。如果你不清除二进制日志,磁盘会填满。如果你删除二进制日志外部MySQL,您将会导致不必要的行为。总是问MySQL清除过时的日志,不删除它们外部。
innodb_file_io_threads
严重性:注意
除了在Windows上,这个选项是无用的。
innodb_data_file_path
严重性:注意
Auto-extending InnoDB文件可以消耗大量的磁盘空间,以后很难收回。有些人喜欢为ibdata1 innodb_file_per_table和分配一个固定大小的文件。
innodb_flush_method
严重性:注意
大多数生产数据库服务器使用InnoDB应该设置innodb_flush_method O_DIRECT避免双缓冲,除非I / O系统性能非常低。
innodb_locks_unsafe_for_binlog
严重性:警告
这个选项让时间点恢复从二进制日志,如果statement-based日志使用和复制,不值得信任。
innodb_support_xa
严重性:警告
MySQL InnoDB之间的内部XA事务支持和二进制日志是禁用的。二进制日志可能不匹配InnoDB崩溃恢复后的状态,和复制可能漂移不同步由于无序的语句在二进制日志。
log_bin
严重性:警告
二进制日志是禁用的,所以时间点恢复和复制是不可能的。
log_output
严重性:警告
指导日志输出表具有很高的性能影响。
max_relay_log_size
严重性:注意
定义一个自定义max_relay_log_size。
myisam_recover_options
严重性:警告
myisam_recover_options等价值应该设置为备份,力量以确保表腐败是注意到。
storage_engine
严重性:注意
服务器使用一个标准作为默认的存储引擎。
sync_binlog
严重性:警告
启用二进制日志,但sync_binlog不是配置,这样每笔交易是耐久性刷新到二进制日志。
tmp_table_size
严重性:注意
内存的有效最小大小隐式临时表查询执行过程中内部使用min (tmp_table_size max_heap_table_size),所以max_heap_table_size应该至少tmp_table_size一样大。
老mysql版本
严重性:警告
这是推荐的最低版本为每个主要的版本:3.23,4.1.20,5.0.37 5.1.30。
临终mysql版本
严重性:注意
每一个版本比5.1现在正式临终。
选项¶
这个工具接受额外的命令行参数。指的“简介”和使用信息的细节。
- ——ask-pass ¶
-
连接到MySQL时提示输入密码。
- ——字符集 ¶
-
简式:-;类型:字符串
默认字符集。如果该值为utf8,集Perl的STDOUT binmode utf8,将mysql_enable_utf8选项传递给DBD:: mysql和运行设置名称utf8后连接到mysql。任何其他值集binmode STDOUT没有utf8层,连接到MySQL后和运行设置的名称。
- ——配置 ¶
-
类型:数组
读这以逗号分隔的配置文件;如果指定的,这必须在命令行中第一个选项。
- ——daemonize ¶
-
叉的背景和分离壳。POSIX操作系统。
- ——数据库 ¶
-
简式:- d;类型:字符串
连接到该数据库。
- ——defaults-file ¶
-
简式:- f;类型:字符串
从给定的文件只读mysql选项。你必须给一个绝对路径名。
- ——帮助 ¶
-
显示帮助并退出。
- ——主机 ¶
-
简式:- h;类型:字符串
连接到主机。
- ——ignore-rules ¶
-
类型:哈希
忽视这些规则id。
指定一个以逗号分隔的规则id(例如LIT.001, RES.002等等),不容忽视。
- ——密码 ¶
-
简式:- p;类型:字符串
连接时使用的密码。如果密码包含逗号他们必须用反斜杠转义:“考试,请耐心”
- ——pid ¶
-
类型:字符串
创建给定的PID文件。这个工具不会开始如果PID文件已经存在,它所包含的PID不同于当前的PID。然而,如果PID文件存在,它所包含的PID不再运行,这个工具将覆盖PID文件与当前PID。PID文件删除工具时自动退出。
- ——港口 ¶
-
简式:- p;类型:int
端口号用于连接。
- ——set-vars ¶
-
类型:数组
在这个以逗号分隔的设置MySQL变量
变量=值对。默认情况下,该工具集:
wait_timeout=10000年
变量在命令行上指定覆盖这些默认值。例如,指定
——set-varswait_timeout = 500覆盖的defaultvalue10000年。该工具输出一个警告,如果不能设置一个变量。
- ——套接字 ¶
-
简式:s;类型:字符串
套接字文件用于连接。
- ——source-of-variables ¶
-
类型:字符串;默认值:mysql
读
显示变量从这个来源。可能的值是“mysql”、“没有”或一个文件名。如果指定“mysql”那么你也必须在命令行上指定一个DSN。
- ——用户 ¶
-
简式:- u;类型:字符串
用户登录如果不是当前用户。
- ——详细 ¶
-
简式:- v;累积:是的;默认值:1
增加输出的冗长。在冗长的默认级别,程序只打印第一个句子每个规则的描述。上级,程序输出更多的描述。
- ——版本 ¶
-
显示版本并退出。
- ——(没有)版本检查 ¶
-
默认值:是的
检查最新版本的Percona工具包,MySQL和其他项目。雷竞技下载官网
这是一个标准的“自动检查更新”功能,有两个附加功能。首先,该工具检查自己的版本和版本的以下软件:操作系统、Percona监视和管理(PMM), MySQL, Perl, MySQL驱动为Perl (DBD:: MySQL),和Percona工具包。雷竞技下载官网raybet雷竞技竞猜在线官网第二,它检查和警告版本与已知的问题。例如,MySQL 5.5.25一个严重的bug, 5.5.25a再版。
安全连接Percona的版本检查数据库服务器来雷竞技下载官网执行这些检查完成。每个请求都是由服务器记录,包括软件版本号和检查系统的惟一ID。生成的ID是Percona工具包安装脚本或版本检查数据雷竞技下载官网库调用完成后第一次。
任何更新或已知问题之前打印到STDOUT工具的正常输出。此功能不应该干扰工具的正常运行。
欲了解更多信息,请访问https://www.雷竞技下载官网percona.com/doc/percona-toolkit/LATEST/version-check.html。
DSN选项¶
这些DSN选项用于创建DSN。每个选项了选项=值。选项是区分大小写的,因此,P, P是不一样的选择。不能有空格之前或之后=如果值包含空格必须引用。DSN选项用逗号分隔。看到percon雷竞技下载官网a-toolkit从全部细节。
一个
dsn:字符集;复制:是的
默认的字符集。
D
dsn:数据库;复制:是的
默认数据库。
F
dsn: mysql_read_default_file;复制:是的
从给定的文件只读取默认选项
h
dsn:主机;复制:是的
连接到主机。
p
dsn:密码;复制:是的
连接时使用的密码。如果密码包含逗号他们必须用反斜杠转义:“考试,请耐心”
P
dsn:港口;复制:是的
端口号用于连接。
年代
dsn: mysql_socket;复制:是的
套接字文件用于连接。
u
dsn:用户;复制:是的
用户登录如果不是当前用户。
环境¶
环境变量PTDEBUG允许详细的调试输出STDERR。启用调试和捕获所有输出到一个文件,运行此工具:
PTDEBUG=1pt-variable-advisor…>文件2>&1
小心:调试输出的和能产生几兆字节输出。
注意¶
使用< PTDEBUG >可能暴露密码。启用调试时,所有的命令行参数输出所示。
系统需求¶
你需要Perl DBI, DBD:: mysql,一些核心包应该安装在任何合理的新版本的Perl。
错误¶
一个已知的错误列表,看到https://jira.雷竞技下载官网percona.com/projects/PT/issues。
请报告错误https://jira.雷竞技下载官网percona.com/projects/PT。在错误报告中包含以下信息:
完整的命令行运行该工具使用
工具
——版本MySQL版本所涉及的所有服务器
工具的输出包括STDERR
输入文件(日志/转储/配置文件,等等)。
如果可能的话,通过运行该工具包括调试输出PTDEBUG;看到“环境”。
下载¶
访问http://www.雷竞技下载官网percona.com/software/percona-toolkit/下载最新版本的Percona工具包。雷竞技下载官网或者,从命令行得到最新版本:
wget雷竞技下载官网percona.com/get/percona-toolkit.tar.gz wget雷竞技下载官网percona.com/get/percona-toolkit.rpm wget雷竞技下载官网percona.com/get/percona-toolkit.deb
你也可以个人工具的最新版本:
wget雷竞技下载官网percona.com/get/TOOL
取代工具与任何工具的名称。
关于PERC雷竞技下载官网ONA工具包¶
这个工具是Percona工具包的一部分,一雷竞技下载官网批先进的MySQL Percona开发的命令行工具。雷竞技下载官网Percona工具包是分叉的从6月份的两个项目,2011:Maatkit Aspersa。这些项目是由男爵施瓦茨和主要由他和丹尼尔走错。访问http://www.雷竞技下载官网percona.com/software/了解其他免费的,从Percona开源软件。雷竞技下载官网
版权、许可和保修¶
本节目版权2010 - 2018 Percona有限责任公司和/或其附属雷竞技下载官网公司。
这个程序提供了“是”,没有任何明示或默示保证,包括但不限于适销性的隐含保证和健身为特定目的。
这个程序是自由软件;你可以重新分配和/或修改它根据GNU通用公共许可证由自由软件基金会发布,版本2;或Perl艺术许可证。在UNIX和类似的系统,你可以发行“男人perlgpl”或“男人perlartistic“读这些许可证。
你应该已经收到了GNU通用公共许可证的副本连同这个项目;如果不是,写信给自由软件基金会,Inc . 59庙的地方,330套房,波士顿02111 - 1307美国。
版本¶
pt-variable-advisor3.5.2