How to I sync SQLExpress to SQLExpress to SQLExpress...

Hi all.  I've got what I thought would be a basic question, but I'm struggling to answer it.

Lets say I have three locations, each running an instance of an application that utilizes an SQLExpress database.  For example:

Let SQLX1 = an installation of SQLExpress, running at a store in San Francisco, CA
Let SQLX2 = an installation of SQLExpress, running at a store in New York, NY
Let SQLX3 = an installation of SQLExpress, running at a store in Chicago, IL

In the simplest terms, what I need is the information gathered at the three locations to show at all the locations.

My requirements are:
1)      Information resides locally at the locations so if/when the internet connection dies, the store continues to process
2)      Upon reconnect of the information, the local information is synchronized to the other locations
3)      Were not talking seconds for updates here.  15 minutes would be fine, an hour would be fine, daily would be not fine, but it would be acceptable
4)      Whatever I come up with needs to be extensible, for example I might have a "customer" that has 3 locations as in the above example.  Next year, lets say, he adds 4 more locations.  All 7 locations need to sync.  Also I need to support multiple customers who might have multiple locations.

I can handle all the database design and make sure that the data is properly segregated and what not.  This question is explicitly about (A) how would I go about setting up my SQL Server licensing and (B) what kind of hardware is required to make this work?  Is there a "big brain" box that is running SQL Server Standard, that grabs from the Expresses and pushes down the changes, back to those Expresses?  Do the Express licenses need to go away at all locations?  

Thanks for your time.
JasonWilliamAsked:
Who is Participating?
 
HwkrangerConnect With a Mentor Commented:
What you want is replication.  I've set a number of replication databases.  You'll need to determine what kind you want (transactional, merge, etc..)

It's pretty easy, just follow the instructions.  Beware, though if you're doing something complex, you'll have to take that into account before you try to do it, remember to plan the entire thing before you implement.

http://www.databasejournal.com/features/mssql/article.php/1438201/Setting-Up-Transactional-Replication-A-Step-by-step-Guide.htm

http://msdn.microsoft.com/en-us/library/ms151329.aspx

Cheers
0
 
HwkrangerConnect With a Mentor Commented:
Response to your:

I can handle all the database design and make sure that the data is properly segregated and what not.  This question is explicitly about (A) how would I go about setting up my SQL Server licensing and (B) what kind of hardware is required to make this work?  Is there a "big brain" box that is running SQL Server Standard, that grabs from the Expresses and pushes down the changes, back to those Expresses?  Do the Express licenses need to go away at all locations?  

1) You need atleast 1 standard license at the "distributor"
2) Minimium Hardware recommended for MSSQL is supported
3) Brain Box?  not exactly, but I guess you could call it that.  Look at the merge replication model.
4) You can replicate with express, I do it.  You need standard as the distributor though.
0
 
JasonWilliamAuthor Commented:
Thanks Hwk.  Thats exactly what I was looking for.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.