运用场景:测试系统数据变化比较复杂,较难定位是哪一个操作影响的问题,同时测试系统有一台跳板机
目前能想到的方案有两种:
1、开启远程调试
即:开启远程调试模式,测试系统的操作可以进入本地的idea里面的断点进行一步步的debug,
远程调试需要配置一些东西,有些同事经常用这种方式,我没试过这种,所以下次再尝试这种
2、拷贝数据库数据到本地环境重现
1、准备工具 Xshell、Xftp
2、进入测试系统,测试系统有跳板机,不能直接进入,也就是说需要进入A机器,然后再SSH 到B机器,B机器才是真的我们存储和操作数据的机器(如果测试系统只有一台机器,那就更简单了。如果测试系统没有用docker,那就直接scp,或者直接用navicate连接,完全不用考虑ftp文件传输这种伤身的方式)
所以数据移动式从B机器的docker的mysql导出数据到根目录,然后再移动到A机器,剩下的scp就简单了
详细步骤
1、进入B机器 docker exec -it mysql bash
2、mysqldump -u用户名 -p密码 –default-character-set=utf8 –hex-blob –databases testdb> /testdb.sql
3、dump操作会把数据文件导出到根目录 cd / 既可以查看到
4、exit 推出mysql,然后docker cp mysql:/testdb.sql . 注意最后面那个点不能漏掉,表示当前目录
5 推出B机器,回到A机器,输入B机器+文件位置,记住后面的.不能漏掉
scp 用户名@B地址:/目录/目录/test.sql .
6、接着在Xshell中点击新建文件传输,直接用Xftp把A机器的文件拷贝到本地
附上时序图方便理解