我需要建立一个报告,从输出的MySQL数据库检查和自动修复.
但不要每次都要完整的报告:只有在需要修理的情况下才需要
调度(cron)任务运行mysqlcheck。
我想从电子邮件中得知最终需要修理,修理成功,修理失败.
但不要每次都要完整的报告:只有修理
我像这样运行mysqlcheck:
mysqlcheck --user=myuser --password=mypwd -c --auto-repair dbname > ouput.log在博客上发现mysqlcheck输出可能是这样的,以防修复。
Repairing tables
dbname.table1
warning : Number of rows changed from 3 to 1
status : OK
dbname.table2
warning : Number of rows changed from 5454 to 5455
status : OK
dbname.table3
warning : Number of rows changed from 471859 to 471860
status : OK因为我找不到任何官方文档来说明输出的具体情况,所以我需要帮助来构建一个通过处理mysqlcheck的输出生成的报告文本文件。
也许一些正则魔术师可以做一个报告,给出修复过的表名、装潢通知等等。
这指的是官方Ubuntu存储库中可用的mysql服务器。
mysql-server 5.7.25-0ubuntu0.18.04.2
发布于 2019-04-25 11:16:34
--silent模式运行mysqlcheck时,传递参数-s或--silent和只有错误消息才会打印。。
修改命令如下:
mysqlcheck --user=myuser --password=mypwd -c --auto-repair --silent dbname 不需要将输出重定向到工作文件并解析它。你确实需要cron设置来发送电子邮件。从这个Q&A:我该如何让Cron发送电子邮件?
MAILTO="example.email@gmail.com"
* * * * * mysqlcheck --user=myuser --password=mypwd -c --auto-repair --silent dbnamehttps://askubuntu.com/questions/1134627
复制相似问题