upgrading from sql server 2008 to sql server 2008 R2 - sql-server-2008

I thought R2 is a patch/service pack. I've been looking for a download but dont see one. I assume therefore that R2 is a new version, and that I would need the install media for sqlserver 2008 r2 to do an upgrade?
Also, would I need to pay for new licenses?

SQL Server 2008 R2 is a separate product. If you have bought your current SQL Server 2008 with Software Assurance (supplied by most software vendors who sell MS products), then you can upgrade at no cost.
Now for the fun part ... You'd think that doing an in-place upgrade from 2008 to 2008 R2 would be a snap. Be warned - it failed on me twice in a row. Luckily we had taken a VM clone and restored it as a test server first, to try out the upgrade. The two times it failed was for two different arcane reasons. The network guys were getting frustrated because they had to keep restoring a fresh test server from the clone. Be absolutely sure that you first test an in-place upgrade in a test environment before you touch your production server. When the in-place upgrade fails, it trashes your SQL 2008 instance and the final message from the installer is to uninstall and reinstall SQL Server. We just decided to instead do a clean R2 install on a new server. Extremely disappointing, since SQL Server is probably the most stable and reliable MS product.

Related

Will MSSQL 2012 database work on MSSQL 2008 server?

I have MsSQL database which is created in MSSQL 2012 SQL server.
On my local machine I have installed MSSQL 2008 SQL server.
Will the 2012 database work in MSSQL 2008?
Also,I have installed MSSQL 2012 SQL server on my local system.Do I need to install MSSQL management studio for 2012 SQL server?
Is it required for user interface?
A full database backup and restore to the new server will not work. SQL server does not allow that to a previous version.
You can however create the schema and load the data in manually through SSIS or BCP.
For SSMS you can connect to a previous version.
Most of the features will work, But features specific to SQL Server 2012 may not work.
You don't need to use Management Studio of SQL Server 2012 in order to browse SSMS-2012 database. You can still continue to use the 2008 R2's IDE.
Whether a 2012 database will work on a 2008R2 server depends.
If you are deploying to your 2008R2 server by running T-SQL scripts then it will only work if
The database objects used in your 2012 database were available in 2008R2
You are not using SQL2012 T-SQL enhancements in your scripts
Your scripts do not depend on system objects or views that were introduced in SQL2012
The local edition of SQL2008R2 is compatible with the SQL2012 edition. For example SQL2008R2 Express will not like SQL2012 Enterprise Edition features.
Ideally you will be using the Developer Edition for your local instance as this is simply a throttled version of Enterprise Edition.
If you are trying to restore to 2008R2 from a 2012 backup then no, it won't work.
Given that SQL Management Studio is a free download why would you stick with the SQL2008R2 version? If you have licenced SQL2012 then you are licenced for the SQL2012 version of SSMS. Why not go the whole hog and install SSMS for SQL2017?
If you do not like SMSS then a paid for alternative might be Aquafold Data Studio. This has the advantage of supporting many database platforms from a single IDE.
it is not neccesarily required to have ssms 2012 . it will work as we have the sql server installed
Just reiterating PingPongOng - a backup and restore wont work as you can't install a newer database onto an older server. You can however go the other way, so a 2008 database could migrate to a 2012 server.
As others have said, you need to create scripts.
Right click on the 2012 database, and on the menu that appears -> Tasks -> Generate Scripts and follow the wizard that appears. This will allow you to create just the schema or schema and data (if required).

SQL Server version mismatch

I'm trying to attach a SQL Server .mdf to my Management Studio 2014, but I get the error:
Attach database failed for Server '...\SQLINSTANCE'. (Microsoft.SqlServer.Smo)
Additional information:
An exception occured while executing a Transact-SQL statement or batch.
(Microfost.SqlServer.ConnectionInfo)
The database 'DatabaseName' cannot be opened because it is version 706. This server supports version 663 or earlier. A downgrade path is not supported.
Could not open new database 'DatabaseName'. CREATE DATABASE is aborted. (Microsoft SQL Server, Error: 948)
The .mdf was created on SQL Server 2012 (which presumably is represented as 'version 706' in the error message).
OK, so I need to upgrade my DB engine to 2012 on my home PC. That means installing 2012 Express from https://www.microsoft.com/en-gb/download/details.aspx?id=29062
A couple of questions though before I do that. By installing 2012, would it be added to Management Studio 2014 automatically? Would I then have both 2008 & 2012 as options for new databases I might want to create, or would 2012 simply replace 2008?
On the download page, it says the supported OSs are "Windows 7, Windows Server 2008 R2, Windows Server 2008 Service Pack 2, Windows Vista Service Pack 2". But I'm using Windows 10. Is this just a case of MS not updating the page or does 2012 really have a problem with Windows 10?
EDIT: It's true that this question is similar to ones previously asked on SO (such as The database cannot be opened because it is version 706), but here I'm not contemplating rolling back the 2012 version of the DB to 2008, but issues pertaining to installing 2012 on my home PC.
So, your SQL Server version is 2008 - you have 2014 management studio and you need to use a database from a server version 2012.
If that is the case; then I hope some of the following will help:
Windows 10 can run SQL Server 2012 fine.
The documentation might just not be updated, but I've not personally seen any issues on multiple instances.
Management Studio 2014 can connect to SQL Server version 2012 as well. You don't need to install it again.
Unless you wish to remove SQL Server 2008, you'll need to install 2012 as a new instance, so you basically have two SQL Servers running. This however, will have affect on how you connect to the databases.
Check out, for example: https://msdn.microsoft.com/en-us/library/ms143531.aspx for more information
So instead of having multiple instances, consider whether you'll still need 2008, so it might be removed if you don't need it at all.
Also - consider whether it might be worth it to upgrade your local instance to newer version - 2014 for example. However this of course might give you the same problem in reverse in the future, if you ever need to make a database on 2014 instance and move it to a 2012 instance.
It all depends on the actual requirements, set-up and development models. Basically because you say it's your home computer, I'd think the newest version might just be the best approach, as you're less likely to use that version as a "creator" rather than a development version.

Upgrading a SQL Server 2008R2 failover cluster to SQL Server 2012

I tried to upgrade a failover cluster running SQL Server 2008R2 to SQL Server 2012 but the upgrade wizard reported a rule failure:
"The SQL Server and Analysis Services features of the selected clustered SQL Server 2005 instance have been installed into separate groups. SQL Server 2012 setup can only upgrade clustered instances installed in a single group. To continue, uninstall either SQL Server or Analysis Services before you upgrade."
Apart from the fact that the current cluster is running SQL Server 2008R2 (it wasn't even upgraded from 2005) both SQL Server and Analysis Services are in the same cluster resource group. The advice to uninstall one or the other is also unhelpful because adding/removing features on a failover cluster is not supported (see http://support.microsoft.com/kb/2547273).
Any suggestions would be appreciated.
Thanks
Graham
Have you slipstreamed all the latest service packs into the 2012 installer media?
If you're using RTM media there are loads of bugs in the setup program, good news is that this is now much easier to do in 2012 than it was in 2008:
Product Updates in SQL Server 2012 Installation

How to import recovered databases into new TFS 2008 SP1 instance

We recently had our TFS 2008 (non-SP1) server crash. I installed a new instance of TFS 2008 SP1 onto Windows 2008 and SQL 2008. The original installation was Windows 2003 and SQL 2005. I had to "slipstream" (i believe is thats what its called) the Service Pack into the actual Setup package. I have a new instance up and running, but do not see an easy way to import the projects fromt he old databases.
Our original machine had a raid failure and I had to use raid reconstructor to recover the data. Our backups were not good apparently so I only have the recovered MDF/LDF's from the raid reconstructor. With alot of DBCC fixing to the databases I have them now online and I can query data.
Is it possible to import the projects, files, history and workitems into the new instance?
I tried replacing the new instance with these databases and followed all the online instructions but i came to a deadend when everything i did said the data access was not compatible. I am assuming because of my new install was SP1 and the original db's were NOT SP1.
Any suggestions?
Because you might have two options to restore your TFS system:
Get into a compatible mode, so roll-back your TFS installation to exclude SP1.
Install a TFS 2010 system, and approach this as a migration from 2008 to 2010. I think the online descriptions for such a migration suggest that the 2010 installation will recognize a 2008 database and start migrating it to 2010.
But ... my gutt feeling says there is something wrong with the database structure or content after restore. What system is actually telling you the data access is not compatible?

Differences Between SQL Server 2008 and SQL Server 2008 R2 from a developer's POV

I am setting up my development machine and I am wondering if I should install SQL Server 2008 R2 (for Developers) or SQL Server 2008 (for Developers) on my machine.
All of the databases that I work with are on SQL Server 2008 (not the R2). So I am torn. Should install what I am currently using? or should I be a bit forward looking and use the R2 version?
Will the client tools from the R2 install connect ok to the non R2 servers?
I guess in general what I want to know is what are the differences between R2 and non-R2 from a developer's point of view? (I don't really care about back end stuff too much.)
As far as I'm concerned, in R2 more features previously available only in Enterprise edition are now available in Standard edition. Otherwise, no big difference.
For a non-Business Intelligence developer (just plain old OLTP stuff), there's really hardly any difference and any additional features in R2, unfortunately :-(
The only thing that might become interesting at some point is the Master Data Service stuff - can't totally wrap my head around it just yet, so for now : R2 is not a big release for database devs in my opinion. Works great and all - but all the new shinyness is in the BI space.
Well.. in my case I have instaled on my computer SQL server 2008 but I wasn´t able to run SQL server management Studio so I decided to move on SQL server 2008 r2 and it works for me, I was able to start successfully SQL server configuration Studio and to connect to Vs2107 that was my primary goal.