MySQL8.0.16版本加入了一个新的服务端参数--validate-config,用于验证MySQL参数配置是否有效。如果所有参数都是合法且有效的,退出码为0,如果有参数无效,退出码为1,并且返回一段字符串信息,提示哪个参数有问题。--validate-config运行过程中,遇到任何一个无效的参数,会立即停止运行,因此它并不会一次性输出所有无效的参数,在修复了一个无效参数后,需要再次执行,直到没有无效参数出现为止。比如:mysqld--validate-config--no-such-option,--no-such-option被识别为未知的参数选项。警告信息并不会导致--validate-config退出码为1,比如下面--read-only=s和--transaction_read_only=s会导致告警,但是退出码仍然为0。比如:mysqld--validate-config--log_error_verbosity=2--read-only=s--transaction_read_only=s适用场景:mysqld后面跟上--validate-config这个参数,在启动时只检查参数是否有效,不会进行其他的操作,比如初始化存储引擎、插件和其他组件等,这个参数比较适合在MySQL版本升级中使用,比如tx_read_only参数在5.7被废弃,在8.0被移除,在5.7升级到8.0的时候,就可以通过--validate-config来验证有哪些参数在5.7是有效的,而到了8.0就不再支持了。在升级前就能检查这些错误,避免在升级过程中发现参数问题,而导致升级失败。如果添加了--defaults-file参数,该参数必须为mysqld后面紧跟的第一个参数,否则--defaults-file这个参数也将被认为是无效的参数。
转载请注明:http://www.aierlanlan.com/cyrz/8055.html