且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

TFS数据迁移之sync_by_file

更新时间:2022-10-01 08:58:54

本文接上一篇文章,介绍了tfs 2.2.16版本下采用syn_by_file工具根据文件名来实现两套tfs系统间的数据迁移。测试的环境同上一篇文章一致。

 

一:清除上一次迁移结束后target上的数据

1
2
# /usr/local/tfs/bin/ssm -s 192.168.1.12:8108
show > block

TFS数据迁移之sync_by_file


1
2
3
4
5
6
# /usr/local/tfs/scripts/tfs stop_ds 1-3
 dataserver 1 exit SUCCESSFULLY 
 dataserver 2 exit SUCCESSFULLY 
 dataserver 3 exit SUCCESSFULLY 
  
# /usr/local/tfs/scripts/stfs clear 1-3

TFS数据迁移之sync_by_file


1
2
3
4
5
6
7
8
# /usr/local/tfs/scripts/stfs format 1-3
# /usr/local/tfs/scripts/tfs stop_ns
# /usr/local/tfs/scripts/tfs start_ns
  
# /usr/local/tfs/scripts/tfs start_ds 1-3
 dataserver 1 is up SUCCESSFULLY pid: 25002 
 dataserver 2 is up SUCCESSFULLY pid: 25001 
 dataserver 3 is up SUCCESSFULLY pid: 25000


二:重新格式化dataservermountpoint之后,target环境恢复到迁移前的初始状态

1
2
# /usr/local/tfs/bin/ssm -s 192.168.1.12:8108
show > block

TFS数据迁移之sync_by_file


三:准备文件名列表

这个列表在上一次迁移完后会在logs目录下产生sync_succ_file文件,复制文件内容出来即可。注意,文件名可能会有重复。

1
2
3
4
5
6
7
8
9
10
11
12
# tail -5 /tmp/file1.txt 
T1mtdTBmV41R4bAZ6K
T1mtdTBK_41R4bAZ6K
T1mtdTBKA41R4bAZ6K
T1mtdTBTd41R4bAZ6K
T1mtdTBg_41R4bAZ6K
  
# wc -l /tmp/file1.txt 
10730 /tmp/file1.txt
  
# uniq /tmp/file1.txt  |wc -l
9575


四:开始迁移

1
2
3
4
5
6
# /usr/local/tfs/bin/sync_by_file -s 192.168.1.229:8108 -d 192.168.1.12:8108 -f /tmp/file1.txt -m 20140926 -l error
-s 参数指定source的nameserver的ip和端口
-d参数指定target(destination)的nameserver的ip和端口
-f参数指定列表的文件名
-m参数指定文件的修改时间,文件修改时间在-m参数值之后的文件都会被忽略,不进行同步。
-l 参数代表日志级别,默认为info

TFS数据迁移之sync_by_file


五:查看结果

1
2
# /usr/local/tfs/bin/ssm -s 192.168.1.12:8108
show > block

TFS数据迁移之sync_by_file


六:验证

TFS数据迁移之sync_by_file

本文转自斩月博客51CTO博客,原文链接http://blog.51cto.com/ylw6006/1562159如需转载请自行联系原作者

ylw6006