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

Posted on in Categories Backup, Networking, Windows, Windows server 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\\inetpub\wwwroot\"robocopy has many more options and lots of other information available in Robocopy.DOC file.

16 comment

  1. 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!

  2. 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.

  3. 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.

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

    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%
  5. If you are going to use RoboCopy to Sync folders bi-directionally, you need to be cautious of the default copy behavior (it will copy files which have changed, are newer or older). The example given above is only a one-way sync, as files changed on the destination server would be overwritten on the next copy.

    The /XO option (exclude older source files) should be added so that older files on the source do not overwrite the destination. Then simply reiterate the same command, swapping the source and destination.

  6. Hi,
    i would like to introduce myself, we are US based Company, and having offices in India & NY in current setup we are accessing that server via vertual machines and facing accessing speed problem for that we want to setup a new server in india also and data will sync in both ways, so with this practice we can access servers locally(india & NY), and share the same data from any of both servers.
    i would like to request you please send me the details of your synchronizing software which can run into windows 2003 server & windows xp we want ot buy it but before that we would like to have Demo/Trial copy of that software, and also quotation for the same.

  7. Hi Ajeet,

    I must say that I don’t understand how you’d access a server “via virtual machines”, but there are perhaps other options to avoid setting up a second server. For example using Remote Desktop, or Terminal Services to allow only the screen/mouse/keyboard updates to be transferred.

    If you’re just looking for a 2 server setup, one in India, one in NY with files replicated between the two, then I’d suggest that your best and easiest option is to use Windows Server (if you’re using Windows Server already) and setup DFS and FRS (Distributed File System, File Replication Services). This handles A LOT of things for you behind the scenes like sync times, as well as 2-way sync, which neither RSync nor RoboCopy can do. It is also included in Windows Server… so no additional cost.


Leave a Comment