1. 场景描述

记录一次运维,朋友公司要从线上环境同步数据到测试环境,因为公司监管问题,导致数据无法从线上获取,需要通过vpn,堡垒机,3次跳转到目标主机,通过命令导出mysql数据文件,然后再将数据导入到测试环境,不复杂,稍微走了一点弯路,记录下,希望能帮到碰到同样问题的朋友,不谢!

2.解决方案

1. 连接目标服务器

1. cccc-cluster vpn
2. ssh [email protected]  / 密钥登陆
3. ssh [email protected] -p 29
4. sudo -u laowang ssh 192.168.1.13

2. 导出mysql数据库数据文件

[root@ruanjianlaowang ~]# ps -ef|grep mysql
#进入mysql命令目录
[root@ruanjianlaowang ~]# cd /usr/local/mysql/bin
#导出mysql指定数据库文件
[root@ruanjianlaowang ~]# ./mysqldump -uroot -proot_123 laowangdb > /home/laowang/laowangdb.sql

(mysqldump -u数据库链接用户名 -p密码  目标数据库 > 存储的文件名)

#查看下是否导出成功
[root@ruanjianlaowang ~]# cd /home/laowang/
[root@ruanjianlaowang ~]# ls -ll

3.导出文件到本地

​ (1)导出到本地还是有点麻烦的,因为是几次跳转,ftp工具直连就不用想了,本来想通过scp多次传输的,在网上查了下有工具,省心不少。

​ (2)使用的首先SecureCRT连接的服务器,网上说可以使用sz命令直接导出,但是是在别人服务器上,抱着试一试的侥幸形态,sz了一下,哇,可以直接导出。

​ (3)假如服务器没有安装了rz,sz,yum install lrzsz安装一下就可以。

[root@ruanjianlaowang ~]#yum install lrzsz

一次运维-堡垒机多次跳转导出及导入mysql数据库-LMLPHP

(4) 运行rz,会将windows的文件传到linux服务器
运行sz filename,会将文件下载到windows本地

[root@ruanjianlaowang ~]#cd /home/laowang/
[root@ruanjianlaowang ~]#sz laowangdb.sql

(5)默认的下载路径再:

一次运维-堡垒机多次跳转导出及导入mysql数据库-LMLPHP

一次运维-堡垒机多次跳转导出及导入mysql数据库-LMLPHP

就可以拿到导出的sql文件了。

4.数据导入到测试库

工具用的navicat for mysql,导入的前两次导入失败,网上找了下,第二个对勾去掉就导入成功了(软件老王)。

一次运维-堡垒机多次跳转导出及导入mysql数据库-LMLPHP

5.简单总结

总体说运维时间不长,2个小时左右,走了一些弯路,不多。

(1)直接从服务器通过命令导出,以前用的比较少,mysql以前通过navicat直连直接就操作

这次使用mysqldump命令;

mysqldump -u数据库链接用户名 -p密码  目标数据库 > 存储的文件名-软件老王

(2)从跳转3次的服务器上下载文件,本来想着使用scp,以前没使用过sz,费了一点时间

(3)导入的时候,数据量不小,导入了2次都失败,才看了下需要去掉对勾;

整体来说,主要是牵扯到vpn,堡垒机,几次跳转的稍微麻烦了点,不复杂。


I’m 「软件老王」,如果觉得还可以的话,关注下呗,后续更新秒知!欢迎讨论区、同名公众号留言交流!

07-06 00:27