最近用go把数据库的自动化运维重构了一遍,之前都是些一些分散的脚本,没有成体系,现在把所有的功能都集成到了agent中,agent中封装的有些命令,会执行一些条件检查,避免手工执行的一些问题,比如建库,库名重复,等等,agent不曝漏密码,可以对执行的所有命令进行记录,审计,agent定时收集数据上传,并提供接口给server端,server端可以通过接口调用agent,操作mysql。server端使用raft,执行统计,以及调用agent接口操作mysql。
agent支持的命令如下:
The commands are listed below. installstart shutdown upgrade startslave stopslave stopio stopsql startio startsql restartslave isreadonly setreadonly slavestatus version kill backup backuptables comparevar flushlogs purgelogs waitutil setreplpos changemaster , delayrepl filterrepl utilsqlafter showblock showprocesslist showbigtrx showmaster showslaves showerror showrole showvar showlogs showos showerrant showdbs showusers showgrant createdb , , grant , , ,



