Thursday, June 26, 2008 1:13 PM
I am unsure exactly how many CALs I require in a replicating scenario, I wondered whether anyone could offer any advice.
An example site would be a main location with SQL Server standard edition, 10 CALs, and we might then have a second site which has two PCs, one running SQL Server Express. The 2 users at the second site access the database on the SQL Express machine, and the data is replicated between the two servers over the internet. If the internet connection is down, both sites still have access to the data.
I *think* I need 2 SQL Standard CALs to cover the PCs at the second site, as the SQL Express is acting as a multiplexer for the two devices at that site. However what I can't get my head around is that the server component doesn't require a CAL - does that mean that the PC it runs on doesn't need one (so in this scenario we'd only need one CAL) or is it the server "task" as opposed to the server "box"?
Thursday, June 26, 2008 1:33 PMModerator
Could you excuse me, but i'm not sure to have well understood your question ( english is not my mother tongue )
Firstly, i suppose that you use replication to update your Sql Server Express from the Sql Server 2005 Standard thru replication ( you know of course you can't replicate Express 2005 towards Standard 2005 )
For your CAL problem, i don't think you need more CAL as the replication must be done from Standard towards Express
Standard is considered as the server ( your last thought is the good one )
Don't hesitate to post again to have more help or explanations
Have a nice day
Thursday, June 26, 2008 1:51 PM
Yes, you're correct in that the SQL Express server replicates from the SQL Standard - I'm not dealing much in the technical side so the exact method it uses is beyond me.
So, in this set-up, I'd need two SQL Standard CALs to allow the remote branch? And if the customer has a laptop running SQL Express which they replicate to when in the office, then take out to site, they would need an SQL Standard CAL for that laptop, too?
Thursday, June 26, 2008 3:06 PMModerator
You need a CAL only when you are connecting directly to a Sql server Standard.
For the 2 users who are connecting to the Sql Server Express , you don't need a CAL as it's free
For the connection of the Sql Server Express as subscriber , i'm not sure and i will search ( for the moment, the documentation is not clear )
As soon as i've a clear and sure answer, i will post it .
Maybe more specialist someone will answer you instead of me.
Have a nice day
Thursday, June 26, 2008 3:16 PM
My understanding is that because the data replicates into the SQL standard edition, the express edition is acting as a multiplexer, so it doesn't alter the requirement for CALs even though the users are connecting "via" the express edition.
You are right about the documentation - it's very vague on this subject. In fact the first sign of the requirement for CALs is actually a post on this forum.
Thursday, June 26, 2008 3:57 PM
You need the Agent to do replication so I don't think 2 cals is enough because here when I check I am the only user but SQL Server the developer edition tells me there are four users so it is not simple at least 5cals for a replication instance.
Thursday, June 26, 2008 5:32 PMModerator
SQL Express ONLY participates in a PUSH replication scheme with data coming down from a Server that has SQL Agent (SQL Express does NOT have SQL Agent).
In that type of scenario, each downstream user MUST have a CAL for the SQL Server that is pushing the data down. The SQL Express (or SQL CE, or SQL Anywhere) acts as a point of convenient distribution -or as was expressed earlier, a 'multiplexor'.
Bottom line is that REPLICATION requires a Workgroup, Standard, or Enterprise edition of SQL Server, and any device that ultimately receives data that is pushed down (replicated) from that server -must have a CAL for that server.
Sometimes organizations develop network scenarios that use various forms of hardware and/or software that reduce the number of devices or users that directly access or use the software on a particular server, often called multiplexing or pooling hardware or software. Use of such multiplexing or pooling hardware and/or software does not reduce the number of CALs required to access or use SQL Server software. A CAL is required for each distinct device or user that is connected to the multiplexing or pooling software or hardware front end.
For the definitive answer, call the friendly licensing folks at: (800) 426-9400
For more licensing information, see:
Thursday, June 26, 2008 5:49 PM
(SQL Server Express does not include the SQL Server Agent, which is typically used to run replication agents. If you use push subscription, replication agents run at the Distributor, which will be an instance of SQL Server 2005, so there are options for synchronizing. But if you use a pull subscription, in which agents run at the Subscriber, you must synchronize the subscription by using Windows Synchronization Manager or RMO. )
This is from Express docs because there are third party Agents that is the reason for what I am saying.
Thursday, June 26, 2008 5:51 PMModerator
Please check out the pricing and licensing page at http://www.microsoft.com/sql/howtobuy/sqlserverlicensing.mspx you can download a detailed document about licensing that includes information about multiplexing. If you have additional questions after reading this document you should call the Microsoft Sales and Partner Information line at (800) 426-9400.