How do I sync data between two Load balanced Windows 2003 servers?

by Vivek Gite [Last updated: October 25, 2006]

For UNIX/Linux server you can use rsync command to keep data sync'd between two servers. rsync also works under Windows NT/2003 server but it will take lots of time to setup.

For Microsoft Windows 2003 server use robocopy tool, to sync files between two windows server. You can download robocopy.exe and other files from Windows 2003 Resource Kit Tools set.

Once tool is downloaded, install the Resource Kit. By default robocopy located at c:\Program Files\Windows Resource Kits\Tools\robocopy.exe. Now let us assume that you want to sync d:\Inetpub\wwwroot\ directory between two Windows server. First create hidden share on www2 (secondary server)

  1. Login to www2
  2. Select d:\Inetpub\wwwroot\
  3. Right click > Properties > Sharing tab > Share this folder > Add $ at the end of share name and save the changes.

How do I use robocopy command?

=> Login to primary server (www1)
=> Click on stat > run > type cmd
=> At command prompt type command:
c:>"c:\program files\windows resource kits\tools\robocopy.exe d:\inetpub\wwwroot www2\\inetpub\wwwroot\"ALTERNATIVELY, use IP address of www2 server :
c:>"c:\program files\windows resource kits\tools\robocopy.exe d:\inetpub\wwwroot 202.54.10.200\\inetpub\wwwroot\"robocopy has many more options and lots of other information available in Robocopy.DOC file.

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 9 comments… read them below or add one }

1 Bala 11.28.06 at 10:09 am

hi

how to post data from one server to another, using asymmetric data transfer.

Thanks in advance….

2 nixcraft 11.28.06 at 6:52 pm

Hello,

I am sorry but i am not getting your question…
Can you explain it in details?

3 MrCiF 12.07.06 at 3:42 am

Thanks for your posts, nut I have a question:

I have a RHEL server (running IBM Lotus Domino for email server) and WindowsServer 2003 Std (backup storage server).

Can you give a help about :

- step-by-step tutorial about how to backup/restore from Linux svr to Windows svr?

- step-by-step tutorial about how to keep data sync’d between Linux svr to Windows svr?

Pls send me a copy to my email if you can!

Thanks again!

4 Jeffrey 01.30.07 at 9:50 am

Hi,

is the sync two way ?meaning i have server a and server b in a load balanced environment so i wanna to sync file btw this 2 server..from A to B and also from B to A..Thanks.

5 nixcraft 01.30.07 at 12:47 pm

Hi Jeffrey,

Yes you can do both ways. You need to write appropriate batch file.

HTH

6 Toyin Ogunmefun 08.16.07 at 4:20 pm

I have the same scenario illustrated by jeffrey, do you have a sample of the batch file you mention.Will robocpy connect to a unix/linux server and copy data across to a windows 2003 and keep the data sync.
I will appreciate if you help with the batch file or point what should be included in it.

7 mmas 03.28.08 at 5:54 pm

Any word on getting that batch file?

8 Sunil 07.07.08 at 2:49 pm

I found this script in a web site long back.
There are many new parameters, you can add that from help
Hope this helps.

@ECHO OFF

SET prefix=robocopy_backup

REM This is the file that we're going to backup from our local drive

SET source_dir=O:\

REM This is the location where the files will be copied to
REM on the external drive.

SET dest_dir=E:\DropBoxBackup2

REM Set the log file name based on the current date.  This
REM will record the results from the robocopy command.
REM The typical format for the date command is:
REM Mon 11/09/2000
REM So, we are parsing the date by moving 4 characters back and
REM copy 4 characters to get the 4-digit year, then we get the
REM 2-digit month by moving 10 characters back and copying 2
REM characters.  Finally, we get the day by moving 7 characters
REM back and copying 2 characters.

SET log_fname=%prefix%%date:~-4,4%%date:~-10,2%%date:~-7,2%.log

REM See the robocopy documentation for what each command does.
REM /COPY:DAT :: COPY file data, attributes, and timestamps
REM /COPYALL :: COPY ALL file info
REM /B :: copy files in Backup mode.
REM /MIR :: MIRror a directory tree
REM /L :: Just list the info, don't actually do it

SET what_to_copy=/E /COPY:DAT

REM Exclude some files and directories that include transient data
REM that doesn't need to be copied.

SET exclude_dirs=/XD "Temporary Internet Files" "Cache" "Recent" "Cookies" "iPod Photo Cache" "MachineKeys"
SET exclude_files=/XF "*.bak" "*.tmp" "index.dat" "usrclass.dat*" "ntuser.dat*" "*.lock" "*.swp"

REM Refer to the robocopy documentation for more details.
REM /R:n :: number of Retries
REM /W:n :: Wait time between retries
REM /LOG :: Output log file
REM /NFL :: No file logging
REM /NDL :: No dir logging
SET options=/R:0 /W:0 /LOG+:%log_fname% /NFL /NDL

REM Execute the command based on all of our parameters
ROBOCOPY %source_dir% %dest_dir% %what_to_copy% %options%

:END
9 Report27 08.07.08 at 2:36 am

Robocopy scripts are good, but I use ViceVersa PRO to sync file between my servers. It is not free, but it won’t fail you!

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Previous post: How do I stop a Linux kernel module from loading automatically?

Next post: How Do I Enable Remote Access To MySQL Database Server?