Do I have both SQL Server 2005 and SQL Server 2008 installed? - sql

When in 'SQL Server Configuration Manager' I see, under 'SQL Server Services', 2 items that look like SQL Server's:
SQL Server (sqlexpress)
SQL Server (mssqlserver)
Does that mean I have 2 versions installed at the same time? The 'SQL Server (mssqlserver) is currently stopped).

You have two instances. They might or might not be the same version (meaning 2005/2008).
Express is just an SKU / edition from the myriad of different editions.
You can have the same version or multiple versions/SKUs installed as different instances on the same machine.
So unless someone wittingly set up a new instance with the name "sqlexpress", you probably have two kinds of products installed (both can be 2008 or both can be 2005 or they can be different - it is just that one of them is presumably the Express SKU while the other is say Standard.)
You can get more information on the instances by using ##VERSION.

It looks like you got SQL Server Express installed with Visual Studio and then later installed SQL Server 2008. I've done this before and the best solution I found was to completely uninstall SQL Server Express and SQL Server 2008. Remove all the files in the Microsoft SQL Server directory in Program Files, then reinstall SQL Server 2008. If you still have problems getting the 2008 instance to be the default, you may also need to uninstall Visual Studio.
In the future, if you're going to install the development (or other) version of SQL Server locally, I suggest making sure you install it before Visual Studio. The VS install won't install SQL Server Express if it detects an existing SQL Server instance on the system.
BTW, you can verify if this is true by using the Add/Remove Programs Control Panel item.

SQLExpress is the light/free edition, usually used for developers or very lightweight applications.
MSSQLServer is the full blown SQL install.
So yes you have 2 "SQL Server" installs, but they are different products, I can't say which versions based on your provided data.

You have two SqlServer instances installed on your system. One is SqlServer Express Edition and the other one a Sql Server. I can't say which version or edition.
Maybe you can find some more information in the registry (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft).

I'd vote against removing either one--SQL server does fine with multiple instances and they are good for different things. For example, lots of open source projects presume a local copy of sql express at .\SQLEXPRESS for development use. Whereas you can't write analysis service stuff with SQL Express.
Or, its not a problem. Those aren't the droids your looking for. Move along.

Related

SQL Server 2008 Express - Install

It may sounds stupid, but I install Microsoft SQL Server 2008 (express edition).
I want to make a new query, but I don't find the window that make it. As I understood, Microsoft SQL Server 2008 gives me the option to use and write a schema.
Where can I find this option? Thanks
It sounds like you only installed the database engine. You need to install Sql Server Management Studio to do that.
If you're using a licensed version then it should be a feature you can select when you install the instance.
If you're using Express then you can find it here:
http://www.microsoft.com/download/en/details.aspx?id=8961
When you install the express version though, be aware that the installation procedure should be followed as though you are creating a new instance of sql server. It's very unintuitive and most people naturally think they should be modifying an existing instance when installing management studio express... I personally wasted an hour trying to figure this out long ago.
What you are looking for is SQL Server Management Studio. You can use it to create databasese, tables, stored proces, run queries etc. You can find it here

Database Migration from SQL Server 2008 Express to SQL Server 2008 R2 Enterprise

The production server in my company is currently running on SQL Server 2008 Express Edition. Now we want to change the version to SQL Server 2008 Enterprise R2. The server is currently running on Windows Server 2008 Enterprise OS.
We want to first uninstall the Express Edition on the Server & Install the 2008 R2 Enterprise on it. We don’t prefer the DATABASE UPGRADE option.
Please suggest how can I go ahead with the installation.
To preserve the same server name and instance name (or default, i.e. MSSQLSERVER), you will need to remove the Express instance first.
There are many configuration settings to keep track of - custom listening ports, surface area configuration, master-db collation, logins, roles, permissions, schemas, installed CLR modules etc. This is not something you will want to attempt with just an answer from ServerFault or StackOverflow. I sincerely and strongly urge you to hire a consultant for this task.
Of course if you have a very small company running just 1 express database on SQL Server defaults, by all means
detach the databases
uninstall express
install enterprise (using defaults for everything)
attach the databases
I cannot but re-stress, please hire a consultant

SQL Server 2005 and SQL Server 2008 Coexisting in Windows 7 machine

Some SQL Server 2005 and 2008 questions.
1) Can they coexist on the same Windows 7 machine without issues?
2) Can you attach and run 2005 databases to SQL Server 2008 without compatibility issues or is this a no go?
3) Does SQL Server 2005 even work on Windows 7?
Yes, both can coexist on the same machine without issues.
Yes, however, once you attach a 2005 database into a 2008 instance, you have upgraded it to 2008 never to go back to 2005 unless you export the data into some universal format. You can however, have both engines running simultaneously and can use either set of management tools to see either database (although some features will only work with the 2008 management studio working against the 2008 database)
Yes. Both sets of tools (including Management Studio) and services can coexist on the same machine (I have this very setup). The only thing you cannot do is to have both engines listening on the same port. Thus, one of the two will have to be a named instance.
1) Yes.
2) You can view 2005 database under 2008 management studio, not sure about hosting them under a 2008 instance though. I'm fairly confident they do, but not sure if it's native or via converting to a 2008 database.
3) Yes.
Note that you can't have 2005 MS and 2008 MS (management studio) installed on the same OS. This was based on my experience a long while ago when 2008 first came out, I got an error message stating that I couldn't install it because of a previous version (2005) being installed, or something akin to that. Turns out it has changed.

Can SQL Server Express be used to effectively administrate a SQL Server Standard/Enterprise installation?

We have a number of MS SQL Server 2005 installations (both Standard and Enterprise editions) on our webservers. From time to time I need to administrate them from home. Right now I'm using Remote Desktop to connect to my work machine, but I'd prefer to install SQL Server Management Studio on my home machine so that I can work more efficiently. I don't have a spare license, so I was wondering... if I installed MS SQL Server 2005 Express on my home machine, could I use it to effectively administrate the higher-end installations on our servers?
See this question:
What's the difference between SQL Server Management Studio and the Express edition?
Also, if you have any trouble doing anything from Managment Studio Express, there are third-party tools out there that have no trouble connecting to SQL Server.
Personally, I've noticed a few things missing out of the box:
Import/Export
Activity Monitor
Job monitor
However, the question I linked to indicated you may be able to restore most of that for use when you connect to a full sql server edition.
If you do a client tools only install of the standard edition (ie. just SSMS) and don't install the database, agent, etc. then I'm pretty sure you don't need another license and won't be violating the EULA. If you want a full install the SQL Server developer edition is only $49 and comes with everything.
http://www.microsoft.com/sqlserver/2005/en/us/developer.aspx
I'm not sure if you can create backup schedules and maintenance plans in Management Studio Express.

Any reason to have SQL Server 2005 and 2008 installed on same machine?

I'm setting up a new development server and want to install the latest version of SQL Server 2008 Express.
Will our existing sql2005 databases work with 2008 without modification?
If so is there any reason to install both versions on the same server?
I haven't actually tried migrating a 2005 database to 2008, but generally SQL handles this cleanly and without difficulty. The simplest way to do it would be to make a backup of your database from SQL 2005 and then restore that backup with SQL 2008.
If you want to keep the SQL 2005 copy around and online until you know that the 2008 copy is working, you might need to move the data/log files for your database when restoring the backup onto 2008, since the old data files will be in use by 2005. You can do this using the with move option of restore database, for example:
RESTORE DATABASE mydb FROM disk = 'c:\backupfile.bak'
WITH MOVE 'maindatafile' to 'c:\newdatalocation.mdf',
MOVE 'mainlogfile' to 'c:\newloglocation.ldf'
As to having both installed at the same time, one reason you might decide to do this would be to simplify the job of testing code against both versions, if you were intending to have your software support talking to both versions.
You can detatch a 2005 database and attach it to a 2008 server. I would recommend against installing both on the same machine unless you must (e.g. you're writing code for a third party and they only use 2005).
What I'd highly recommend is using windows server 2008 hyper-v to create 2 virtual machines one with the 2005 environment, the other with 2008. Hyper-v virtual machines are incredibly faster than Virtual server 2007.
The databases should (should!) work unmodified. However, for development it is preferable that you have sql2005 to test your scripts unless you assume all your clients would upgrade to 2008 as well, since 2008 has features that do not exist in SQL Server 2005.
In dev and test environments, having multiple database servers installed is not a problem and can reduce the number of test servers required.
In production, I wouldn't recommend it due to the fact that multiple buffer pools fight and kill your performance.
To me the important thing is will you have prod instances that are 2005 databases? Will you have to support reporting services reports that are on a prod server that only has the 2005 version of reporting servives, etc?
If so, you should have both the 2005 and the 2008 versions on your development machines. I've seen a lot of code that had to be thrown out because developers worked on 2008 when prod was 2005. ALways develop against the version of the software you will have in prod. If you are converting to 2008 but not there in prod yet, you need both, one for maintenance changes and one for future stuff.
Personally I have SQL server 2000, 2005 and 2008 on my machine because we haven't converted everything yet and I have some things which can only be done on the older version. We have found the key to maintaining multiple versions is to install them i nthe correct order. It seems to go badly if you put 2008 on first and then the older versions.
Sometimes you need to be able to test on multiple versions, or you may need 2005 for one thing and 2008 for another.
Sometimes you maintain several different apps, some of which are on one and some on the other, and you haven't updated everything yet. Sometimes you're upgrading, and need to test on both versions during the upgrade. Sometimes you support several different customers, some on one version and some on another. Sometimes you want to upgrade your internal apps, but you're using a software package that is only certified on an older version.
There's lots of reasons.