SQL Server Multiple Instances License - sql-server

Since SQL Server Express is free to use, If I install two instances of the same version on a single CPU machine, will there be any licensing issue even though it is free?

None.
I currently have a VM that has:
SQL Server 2005 Express
SQL Server 2008 Express
MySQL 5.1.49 Community
Oracle Express (10g)
I don't recommend having them all run on start up, unless you actually need to access them.

Related

How do SQL Server Express and Enterprise talk?

I am a bit confused about how SQL Server processes multiple queries while I run a query in SQL Server Express but the data is located in the Business / Enterprise SQL Server.
I have an Enterprise version of SQL Server installed on the server which has multiple TB of data. I do not have physical access to the server hence I have two approach. Use RDP to connect to the server and run the query, or connect to SQL Server instance via SQL Server Express which is installed on my local machine (obviously we should be in the same domain). I do not have any question about RDP, my concern is about the second approach.
When I run multiple queries on my local machine (not on the server), I noticed that the performance is very slow.
From here and here it look likes that my SQL Server Express is running the query and because of the # CPU limitation, it is very slow.
But I would like to be sure about how SQL Server processes my queries. To be specific, I would like to know more about step 3 and 4 as shown in here. Specially, I would like to know how Express and Enterprise talk to each other over tcp/ip. What does SQL Server Express send to Enterprise and what does Enterprise send to Express?
I found this article, but this one does not look like the thing that I am looking for.
Well, either
you are connected to your local SQL Server Express and the query is run there (locally - with all the limitations)
OR
you are connected (using SSMS from your local machine) to the SQL Server Enterprise database, and then the query is run on that server (not on your local machine - you just use a GUI on your local machine to see what's going on). Since those queries are run on the server, no limitations from your local Express instance will affect your queries
Unless you've setup some kind of replication or a "linked server", there's no "talking" between your local instance and the remote server instance.....
SQL Server is the database engine, and SSMS (SQL Server Management Studio) is just an IDE (Integrated Development Environment).
All queries are ALWAYS executed on the server regardless if it is Express or Enterprise editions.
SSMS does not execute a query ever, it does not do any work. It only passes the query to the server and display the resulting record set. The only speed difference that can be observed would be due to transferring the data set over the network from the server to the client.
Please read: What's the difference between SQL Server Management Studio and the Express edition?

How to install sql2005 on sql2008r2?

I am poorly experienced in SQL Server installations. I have already installed 2008r2 on Microsoft Windows 8.
Now I want to install MS SQL Server 2005, but I need both MS SQL Server 2008r2 and MS SQL Server 2005.
How can I install this?
You can install both versions on same computer..
From MSDN:
SQL Server supports multiple instances of the Database Engine, Analysis Services, and Reporting Services on the same computer. You can also upgrade earlier versions of SQL Server, or install SQL Server on a computer where earlier SQL Server versions are already installed.
There's a couple of problems here; firstly SQL 2005 isn't even compatible with Windows 8. Windows 7 you can just about get away with it with some patching. Next you need to install the instances and tools in version order. So SQL 2005, then SQL 2008.
You could try uninstalling SQL2008, but you'll probably find too many updates and bits have occurred to get back to a state that might allow you to try doing SQL2005.
My recommendation would be; format the host machine. Install Windows 8. Setup HyperV virtual machines for each version of SQL Server in an operating system that's more inline with the SQL product. Eg. Win2003 for SQL2005. Win2008 for SQL 2008.
He's a block post of doing this to create a manageable developer workstation running every version of SQL Server: http://www.purplefrogsystems.com/paul/2016/05/using-hyper-v-and-powershell-to-create-the-perfect-developer-workstation/

confusion about SQL Server Express and localdb

I need to deploy a WCF service with a database on client machines. I am confused about SQL Server Express. I need to verify all of the following.
When attaching database files in the App_Data folder, do I still need to install SQL Server Express engine (Windows service) on client machines?
There is a flavor called SQL Server Express LocalDb. That one does not need an engine (Windows service)? But I think it need a prerequisite installation of LocalDb.
Localdb is introduced with SQL Server 2012. There is NO localdb for SQL Server 2008. Correct? I could not find 2008 version on MS site.
Do I still need to install SQL Server Express engine (A win Service)
on client machines?
Yes, they need it installed for your application to query the database. Can't really get around it.
There is a flavor called SQL Express localDb. That one does not need
an engine (win service)? but I think it need a perquisite installation
of localdb.
Yes, you'd still need to install LocalDB on the client machine. It's pretty hassle-free to do, but I think it's overkill unless you really need the full features of a SQL Server instance for your webservice.
Instead of LocalDB I'd strongly recommend using SQL Server Compact Edition - it performs the role you're thinking of (your WCF Service can simply connect directly to the database file on your client machines without installing SQL Server, and is lightweight), but doesn't need to be installed (it's simply included as a DLL with your WCF application):
Unlike other editions of Microsoft SQL Server, SQL CE runs
in-process with the application which is hosting it.
In Microsoft's own words on the differences between LocalDB and SQLCE:
LocalDB and SQL Server Compact?
Small and simple database, lightweight installation, connecting to a
database file -- this will sound familiar to any developer using SQL
Server Compact. The similarities are not accidental, as our goal for
LocalDB was to be as easy to use as SQL Server Compact (while being as
powerful and compatible with full SQL Server as SQL Express).
There are significant differences between LocalDB and SQL Server
Compact:
Execution mode: SQL Server Compact is an in-proc DLL, while LocalDB runs as a separate process.
SQL Server CE is kind of like an updated version of MS Access, the file goes with the application which can "just connect" to the database file without involving any database server installation, and its syntax/features are very close to SQL Server standard.

SQL Server 2008R2 Express and LocalDB on same machine

I am trying to evaluate LocalDB. My computer already has SQL Server 2008 R2 Express on it (in addition to SQL Server 2008 R2 Standard and SQL Server 2008 Standard).
When I try to install LocalDB, it asks for confirmation to upgrade. So it is trying to upgrade by 2008 R2 Express to Localdb? And I hit no and didn't proceed further.
Can someone please point me to links where they explain what exactly happens? Will my 2008 R2 Express be gone forever? All databases will be upgraded to LocalDB? There will not be a Express service anymore?
I just want to use localdb as an addition, not as a replacement. Is this possible?
How are you trying to install LocalDB? If you do it via SSDT (SQL Server Development Tools), it won't touch any of your other instances of SQL Server. Also, remember that LocalDB is not an instance of SQL Server in the sense that your other instances are. It's essentially a process that spins up when needed (an attempt is made to connect to it) and shuts down when not needed. Therefore, it's not competing with your other SQL Server instances.

SQL 2000 database copy to SQL 2005 options

We have a production web and database server with SQL Server 2000. (However, a few clients they have their own servers with SQL 2005.) So we have local installs of SQL 2005 Express for development on Windows XP SP3 boxes (which don't allow SQL 2000 Enterprise installations).
We often need to copy SQL 2000 databases to SQL 2005 instances. In the past, we have used the SQL Publishing tool (also mentioned here). However, one of our databases is so big that using that tool fails as it creates SQL scripts that get too large for Management Studio to handle them properly. Besides, it takes too long... :)
We would use the Copy Database Wizard included with SQL 2005, but our development machines run SQL 2005 Express which don't included SQL Server Agent, which is required for Copy Database Wizard to work. So, I guess our solution will be to upgrade our development installs with the full version of SQL 2005 (we have an MSDN subscription of course).
I was wondering what other solutions, if any, work well for you guys? (Besides complaining to the bosses to upgrade our production servers to 2005 or even 2008--which I've already tried.)
Back it up in SQL Server 2000 and then use the RESTORE WITH MOVE command into 2005 Express.

Resources