部分地方或XX取证的时候,可能得到一个不通格式的mysql备份文件,数据库版本不同,需要安装不同的mysql和Percona XtraBackup,相关操作需要linux部署,操作比较麻烦。
于是用golang开发了一个小工具,可以根据文件的格式,恢复,并且启动相关的mysql服务,进行分析。
简单说下原理:
0、init 检测系统依赖
1、解析文件格式
2、解析数据库版本
3、调度文件与docker联动到不同的自制的XtraBackup中
4、获取mysql版本
5、修改mysql为自建兼容配置,添加mysql相关用户,自检本地可用端口,进行NAT映射
6、根据mysql版本,启动对应版本服务
再简单说下优点:
1、golang原生支持docker 的SDK,也支持夸平台、win\linux\mac,就一个可执行文件,相对没那么繁琐环境依赖
2、docker可以封装不通的服务,扩展性比较高
3、支持本地、或服务器部署、本地进行映射
4、支持高版本mysql (8.0)
有需要的可以联系我:
{echo,c2V2Y2tAamRzZWMuY29t}|{base64,-d}
【版权所有@Sevck 博客地址http://www.cnblogs.com/sevck】 可以转载,注明出处.