THE SQL Server Blog Spot on the Web

Welcome to SQLblog.com - The SQL Server blog spot on the web Sign in | Join | Help
in Search

Aaron Bertrand

Aaron is a senior consultant for SQL Sentry, Inc., makers of performance monitoring and event management software for SQL Server, Analysis Services, and Windows. He has been blogging here at sqlblog.com since 2006, focusing on manageability, performance, and new features; has been a Microsoft MVP since 1997; tweets as @AaronBertrand; and speaks frequently at user group meetings and SQL Saturday events.

Fun with software : uninstalling SQL Server 2008 R2 Evaluation Edition

Here we go 'round the uninstall bush...

Today I spun up a rather aging VM so that I could take some screen shots from the 2008 R2 version of Management Studio.

When I clicked on my shortcut, I received this error:

 

For searchability, here is the text (with an actual clickable link, imagine that):

---------------------------
Microsoft SQL Server Management Studio
---------------------------
Evaluation period has expired. For information on how to upgrade your evaluation software please go to http://www.microsoft.com/sql/howtobuy
---------------------------
OK  
---------------------------

Of course what this meant was that, for this particular VM, I had installed an Enterprise Evaluation instance before the RTM bits for Developer Edition were available.  And clearly this happened more than 180 days ago, and I forgot about it.

If you go the link (which ends up at http://www.microsoft.com/sqlserver/en/us/default.aspx), there isn't really any information about converting evaluation software to licensed software (even if I already have licensed bits in hand).  In fact there is not really any information about Evaluation Edition at all, except for an offer to install a second trial instance on my machine.  I'm trying to remove one, but thanks anyway.

So the first thing I do is to install a real, licensed version of SQL Server 2008 R2 Developer Edition.  I figure, if anything, it will at least give me a functional Management Studio again, even if I have an outdated Evaluation Edition engine lying around.  Nope, I run through install, and when I try to launch Management Studio, my evaluation period has still expired.  I plead to #sqlhelp on twitter, and I'm told I need to remove all of the 2008 R2 bits.  This was the first time I'd had any reason to uninstall 2008 R2; at my previous job, we had only just migrated to 2008 in production late last year.  I guess I should test cleanup more often.

Now, removing SQL Server 2008 R2 turns out to be a much bigger challenge than you might expect.  Sure, you can go through the Control Panel and uninstall all of the components individually, but this is a hassle, and it still might not work very smoothly.  To clear a path, I've been uninstalling applications that might be related (e.g. Visual Studio), and even applications with no hope in hell of being related: Office 2010, Flash, Windows Live "Essentials"... I even uninstalled an instance of SQL Server 2008 (not an eval), and when I tried to remove the setup support files, I received this warning:

 

Why on earth are the R2 Common Files dependent on SQL Server 2008 Setup Support Files?  And further to that, I'd like to know why, when I clicked No on this dialog, it seemed to remove the SQL Server 2008 Setup Support Files anyway.  It turns out there is some flag that removes the entry from the Programs and Features list, even if you don't go through with the uninstall.  All was returned to normal when I closed the window and opened it again.

Anyway, let's see what happens when I try to remove R2 via the Control Panel.  I right-click the item in the list (and as you can see, "the list" is pretty short - and never mind the blurred out entries, I'll talk more about those soon, and they aren't related to R2):

 

When I choose Uninstall/Change, I get this box, and I click Remove of course:

 

When I click Remove, I get the Setup Support Rules dialog (just like I do for a new installation), and then when I click OK, I get this lovely dialog (I trimmed it so I wouldn't have to shrink it, but you get the gist):

 

Why does this not seem like it will end well? 

Because according to the dialog, nothing is going to be removed (usually you see actual features with checkboxes).  I should not even be able to see a Next > button.  But for fun, I'll click it anyway, since my only other option at this point is to Cancel.  I click Next > a couple of times, then a big shiny Remove button, and then after several seconds I get another even more lovely dialog, indicating that the uninstall has crashed:

 

And again for searchability (typo and all):

TITLE: SQL Server Setup failure.
------------------------------

SQL Server Setup has encountered the following error:

No feature were uninstalled during the setup execution. The requested features may not be installed. Please review the summary.txt logs for further details.

Error code 0x84B30002.

------------------------------
OK
------------------------------

At this point I've spent more time on this than I would have if I had just built a brand new VM and.  But I was determined to see it through.  So I finally gave in and decided to go the msiexec.exe /x route.  I located all of the R2-related GUIDs in the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\

Here is one example:

 

So I went through the entire list, and saved the following commands to a batch file:

rem DisplayName
msiexec /x "{guid}"

And I also added one that wasn't in the GUID list; there was a key under Uninstall called "Microsoft SQL Server 2008 R2" with the following properties:

 

Here is what my final .bat file looked like. You'll note that I put the Setup Support Files last.  Also please note that your set of GUIDs may be different than mine... I'm just listing what I did as an example:

rem SQL Server 2008 R2 Common Files
msiexec /x "{234F6B0D-10AE-4BB7-B2F3-E48D4861952D}"

rem SQL Server 2008 R2 Common Files
msiexec /x "{36F70DEE-1EBF-4707-AFA2-E035EEAEBAA1}"

rem SQL Server 2008 R2 Database Engine Shared
msiexec /x "{A2122A9C-A699-4365-ADF8-68FEAC125D61}"

rem Microsoft SQL Server 2008 Setup Support Files
msiexec /x "{C0C690C8-F335-4BA4-A2AD-675EAD1DFA90}"

rem SQL Server 2008 R2 Database Engine Shared
msiexec /x "{C942A025-A840-4BF2-8987-849C0DD44574}"

rem Microsoft SQL Server 2008 R2 (64-bit)
msiexec /x "{20E42995-BBE9-4697-8394-FCDC4338706B}"

rem Microsoft SQL Server 2008 R2 Setup (English)
msiexec /x "{C3E48238-5FA0-4C82-9509-36D47E371A29}"

Running through these, I had several that returned a dialog about an unexpected error, but I ignored those and plowed through.  When I was finished, I ran the batch file again, and every line item raised this dialog:

 

This is a good thing; it smells like I'm almost home.  So - finally - I try to run SQL Server 2008 R2 setup again.  To avoid some wasted time, I install only the Management Tools on my first run.  Though, if I'm being honest, even installing just the client tools takes several minutes.  Precious, Monday Night Football minutes.

And, believe it or not, we have success.

That was WAY too painful, and I'll never get that time back. Hopefully this post will prevent you from going down a similar rathole.  My advice:

  1. Build VMs with the expectation that they may need to be paved over and rebuilt from scratch.  Keep SQL Server installation files, service packs, hotfixes, and slipstreamed sources handy on a non-virtualized machine or on removable storage.
     
  2. Try everything in your power to avoid Evaluation Edition. Spend the $49 on Developer, and stop watching the clock or coming up with schemes to set your clock back to the 1980s.  Developer is not free like the eval, but it will be easier to migrate / replace than an expired evaluation.  I would have gladly spent $49 to not go through what I just documented here.

  3. When someone tells you to pave over your VM because R2 "does not uninstall nicely," listen to them.  I have two VMs that were in this state at the beginning of the day.  I'll let you guess how I'm going to deal with the second one.

  4. Because it bears repeating: avoid Evaluation Edition if there is any chance at all the software will be expected to outlast the 180-day trial period.  If you can't avoid it, when you're done evaluating, perform a thorough cleansing of your machine.  You never know how old software can learn new, frustrating tricks.

 

Published Monday, October 25, 2010 9:12 PM by AaronBertrand

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

 

Twitter Trackbacks for Aaron Bertrand : Fun with software : uninstalling SQL Server 2008 R2 Evaluation Edition [sqlblog.com] on Topsy.com said:

October 25, 2010 9:36 PM
 

AlexK said:

Yeah.

Recently I was helping someone who bought a netbook with preinstalled trial McAfee, which expired. The only thing that worked was to nuke and pave.

October 25, 2010 11:19 PM
 

Patrick Flynn said:

This wonderful feature works even when eval edition is upgraded before expiry.

Scenario was: Installed veal edition to test functionality. after 90 days uninstalled eval and installed the licensed standard edition. After another 90 days the database engine kept going but SSMS, SQL Agent and other components ceased functioning as they had "expired".

October 26, 2010 7:14 AM
 

Mark Broadbent said:

Oh dear oh dear. Thanks for highlighting this mess.

October 27, 2010 11:22 AM
 

Jason Coombes said:

Just hit this one today as I had originally installed the tools from SQL 2008 Enterprise Evaluation but later upgraded to SQL 2008 R2 Developer Edition (engine and tools). Luckily the solution was quite straight forward after following Option 2 in this KB article:

http://support.microsoft.com/kb/971268

Re-ran the edition upgrade for R2 and selected to only upgrade shared tools (SSMS, etc) and now I'm back and running again.

November 18, 2010 5:59 AM
 

Larry Watson said:

Thank god

November 30, 2010 9:04 PM
 

Dave said:

Thanks a lot.  What a nightmare.

December 6, 2010 11:01 PM
 

Mark said:

Thanks so much for this info.  I am in the bat file stage but things look promising.  Like Dave said, what a nightmare.  On the plus side I did learn quite a bit.

December 28, 2010 4:35 PM
 

Laurie said:

Thank you for sharing! It was wuch a nightmare!

January 4, 2011 3:36 PM
 

Victor M Sanchez (Atharky) said:

OMG! i come later to this post! this issue was raises by the uninstallation of Denali for me... painfull and long work to resolve.

I go to publish this issue in spanish in my blog if you don't have any problem.

January 25, 2011 10:12 AM
 

AaronBertrand said:

Hi Victor, of course I have no issue with you posting a translation to your blog.

Cheers,

Aaron

January 25, 2011 11:05 AM
 

Junior said:

Thanks a lot,

I also tried with Windows Installer Cleanup Utility which didn't help (the tool is retired anyway, but it helped a lot before)

January 31, 2011 2:43 AM
 

Bairo said:

veramente un grande aiuto. Thank you.

February 3, 2011 3:21 AM
 

Jade said:

Thank you....10 hours fighting with the server. We won though!

If you can call it a win...

But yeah SQL is installed with no errors.

Had to do some CCleaner work though (since they retired Windows Installer Cleanup Utility...omg M$ admitting they did something wrong?!), and the WMI component seemed to be busted, had to rebuilt the repository.

haha did you read this one though? http://support.microsoft.com/kb/971268

so funny...if i could uninstall it the right way you think I wouldnt M$? made me lol. just like the instructions on a peanut bag :" Open bag, eat".

Thanks man :)

February 10, 2011 10:53 AM
 

Devin D. said:

Thank you... My whole day has been wasted trying to fix this issue.  Took forever to uninstall everything, but it did work.

February 18, 2011 7:40 PM
 

Jim B. said:

Thank you for this information - I was going crazy trying to get SQL 2008 R2 uninstalled!

March 4, 2011 2:45 PM
 

Alex B said:

Excellent article.  Being a OSX and *nix admin, I'm constantly flustered by windows uninstall failures, and the mystery locations files get stuck in.  Love it when I can write a script to clean up the MS mess ;)  Next time though, I'll mark my calendar before the 180 days expires!

Cheers!

March 11, 2011 1:35 PM
 

Munshi Verma said:

Aaron! You rooock man!

You saved my day indeed. I have been hitting my head on ways to get rid of those SQL Server 2008 R2 Database Engine Shared and the Common Files, but couldn't until saw your above blog...:)

Thanks a tonn!

Keep up the good work!

Thanks and regards,

Munshi Verma

verma_munshi@yahoo.com

March 19, 2011 12:20 AM
 

Jyotsna said:

Thanks Aaron..

It worked perfect, thanks for sharing this information.

March 27, 2011 7:58 PM
 

Ben said:

Thanks a lot.

You saved me much frustration and time.

Re-installing the OS server was not an option, so your help was invaluable.

April 14, 2011 6:27 AM
 

Johnny_D said:

Thank you, Aaron.

That worked for me, after 24 hours of finding the answer, finally I've found it. Thanks a lot.

April 18, 2011 11:50 AM
 

MARC said:

I have gone through this hell before, however I needed to uninstall again today.  I had no problems uninstalling from Control Panel in Windows 7 - HOWEVER - I stopped IIS on my machine today (God knows why) and had NO problems whatsoever. Luck or the right thing to do, I have no idea !!

April 19, 2011 7:21 PM
 

Raj said:

Thanks a lot.

Great job Aaron....

Finally done, after 24 hours of finding the answer.

April 20, 2011 3:10 AM
 

Chuck said:

Thank for the details instructions.  This worked for me.

April 21, 2011 11:18 AM
 

Aaron Bertrand : Your Denali installation will self-destruct in 5... 4... 3... said:

April 21, 2011 12:30 PM
 

Noravia Rodriguez said:

It could sound strange but for my surprise I went to Control Panel - Uninstall Prgrams - And choose SQL Server 2008 64bits - Change - Remove.

Here was the only place where I could find the instance installed to be able to remove it.

If facing the same please let me know

Thanks

April 22, 2011 1:42 PM
 

anonmemo said:

thank you so much. I THINK it has worked for me, still gotta wait and see lol

May 2, 2011 3:18 AM
 

Marie Haggberg said:

My experience was similar to yours: created a VM, installed the 2008 R2 evaluation edition, then decided to repurpose the VM for use in training. Uninstalled the eval edition (not!) and couldn't install 2008 R2.

Your solution worked perfectly and cleared all the evaluation detritus from the VM. Thank you for this helpful post.

May 6, 2011 12:13 AM
 

Srinath said:

Thanks a lot. It helped me to resolve the issue.

May 15, 2011 3:24 AM
 

Rob Farley said:

If you haven’t been caught by a client (or even yourself) installing SQL 2008 R2 Evaluation Edition and

May 23, 2011 10:04 AM
 

Ilan said:

Thank you so much!

May 24, 2011 3:31 AM
 

yasser said:

Really thank u !

June 1, 2011 10:09 PM
 

KM said:

Thank you! Thank you thank you thank you! Thank you! :)

I thought I was never going to get it to go away!

June 8, 2011 7:39 PM
 

Jeroen said:

You saved my life, many thanks!

June 27, 2011 4:01 AM
 

lanex said:

Thank you Aaron for sharing!!! I had the same pain, but with a happy end, because:

I went through fixes steps on http://www.sqlcoffee.com/Troubleshooting073.htm

Thank you, Alberto Morillo!!! SQLCoffee.com

June 29, 2011 11:10 AM
 

Aaron Bertrand said:

In case you missed my previous post, the CTP3 of SQL Server Code-Named "Denali" is now available. You

July 12, 2011 7:47 AM
 

Date said:

Thank you very much! It works!

July 20, 2011 8:22 AM
 

Mark A said:

I love you and want to have your babies.  Was going absolutely nuts on how to remove this horrid piece of software (or at least the installer is horrid).

August 2, 2011 6:53 AM
 

Henrik Badsted said:

Great, helped me a lot :-)

THX from Copenhagen, Denmark....

August 19, 2011 2:09 PM
 

JD said:

Thank you so much!

August 26, 2011 6:32 PM
 

Alex said:

Thank u man!

August 31, 2011 9:30 AM
 

Priya said:

Thanks a lot - This article is of great help!

September 6, 2011 3:23 AM
 

drGian said:

I was stuck in this nightmare after not even intending to install the eval version.  had a production box that suddenly stops working and the bosses are yelling.  If I hadn't found these (relatively simply) instructions i'd have been screwed.  Thanks.

September 6, 2011 1:47 PM
 

Jhony said:

Thanks Aaron :)..I was facing same error...and i was trying to resovle this error from past 2 days...finally i read your articles...and it helped me a lot...issue got resolved and installed sql successfully....Thanks a lot again :)

September 7, 2011 4:40 PM
 

KenCov said:

Thanks Aaron, This was very frustrating to say the least.  Your article helped me out tremendously.

September 13, 2011 6:01 PM
 

Anthony S said:

Thank you Aaron.  I wasted two days on this until I found your blog and followed your instructions.  Viola!

September 13, 2011 6:56 PM
 

Bob Hoffman said:

Incredibly useful back door technique. I used it for a related SQL 2008 issue but it looks like it can get rid of any software that refuses to leave by the front door. Thanks so much.

September 22, 2011 3:01 PM
 

VaKa said:

That's great!

Thanks so much.

October 17, 2011 5:29 AM
 

Marc G, said:

I'll jump on the old bandwagon and say thanks Aaron for this solution, I was in the same boat as all y'all and this solution worked like a charm! Rock on!

October 25, 2011 4:09 PM
 

MorpheusMTL said:

Wow! after 2 days lost, this recipe is the best thing I found. In my case I had to sort order to resolve uninstall dependencies, i.e. I had to ask removal of "engine shared" at the top of my batch file list. When I ran the batch file a 2nd time, everything was perfectly remove (unbelievable!). Thanks for sharing, Morpheus

October 26, 2011 11:27 AM
 

Frankanie said:

It work well with a complete f*ck up installation where is impossible to uninstall with a soft and normal way.  After that, SQL 2008 R2 was able to complete all installation without problem.

October 28, 2011 10:10 PM
 

dd said:

You just saved my day. Thank you very much!

October 31, 2011 11:36 PM
 

Aleksander said:

Man, I love you. Thanks so much!

November 15, 2011 4:16 PM
 

Arvand Fazeli said:

since this is the painfull way of doing it i wouldn't suggest doing it.

after i followed ur steps i was stuck with other problems which finally made me to remove every registery associated with sql server but that didn't end pretty well either.

my suggestion is that to use windows "fix it" wich is designed to this taks.

November 18, 2011 9:44 AM
 

Amanda said:

Thank you so much for this fantastic post!

November 20, 2011 10:39 PM
 

AJ said:

You saved my time mate!

November 23, 2011 8:31 AM
 

Evald said:

Thanks!!!

November 23, 2011 9:17 AM
 

Aaron Bertrand : Connect Digest : 2011-12-01 said:

December 1, 2011 9:37 AM
 

Samuel (Brazil) said:

OI Aaron. Queria saber se é possível você acessar meu notebook e realizar esse procedimento. E quanto seria o valor desse trabalho?

December 7, 2011 8:03 AM
 

Jamin said:

your a great admin, that was awesome!

December 13, 2011 2:16 PM
 

Rose said:

Thanks so much. it was important ti me...

December 20, 2011 7:55 AM
 

Antonio said:

Perfectly removed that ... software with a simple .bat file.

Thanks so much for sharing your guide!

December 22, 2011 12:50 PM
 

Randy said:

you saved me again sir, Thank you very much

January 10, 2012 5:14 PM
 

Jamigo said:

Thank you very much!!!!

January 11, 2012 4:20 AM
 

Jaids said:

Aaron it works. I had it on WIN7 X86 my issue wasn't the evaluation period error but the sql server engine wasn't working and corrupted. I would go and buy the DEV 49 buks one :-). wtf i learned it hard way wasted a whole week trying Add Remove Program feature.

Thanks again

January 11, 2012 7:53 PM
 

Jaids said:

well if you run the batch file while you have SSIS server running you can get in trouble and it won't delete few registry files. Here we go i am going to delete any thing related to MSFT SQL on this puppy. I wish release team did have a complete documentation around it so people knew before evaluating the application. smh.....

January 11, 2012 8:26 PM
 

MS SQL 2008 R2 Evaluationsversion l??sst sich nicht deinstallieren Mathias J??kel ist auch Online | Mathias J??kel ist auch Online said:

January 13, 2012 6:18 AM
 

Aaron Bertrand said:

My favorite blog post Picking favorites is never easy. While I definitely feel like I had some more thought-provoking,

January 20, 2012 2:55 PM
 

BisschopsG said:

Hi,

Thank you for this, this was exactly the same for me and solve my issye while trying to remove a R2 to put a 2k8 instead.

Regards,

January 23, 2012 5:58 AM
 

Hani Allawnha said:

Thanks Aaron, I am going to follow your guide. Your time spent is much appreciated.

January 26, 2012 2:29 PM
 

fleep said:

booya.... werked fer me too! PIA but thx

February 4, 2012 10:03 PM
 

David said:

This worked great.  Thank you.

Love the bat file trick.

February 13, 2012 11:38 PM
 

ShelLuser said:

Wonderful tip, thanks a lot!

I also fell into the eval trap. I recently discovered MS' Express versions of IIS and SQL 2008 and because the pg_sql driver with PHP 5.3 (shipped with IIS 7 Express) gave me lots of issues I decided to give the SQL Express a go. Forgetting that 2008R2 eval. was in the way.

Rest is as you described above. Best part: I learned something new here!

This tip went straight into my OneNote bag of Windows goodies.

Thanks a bunch, saved me lots of time and grief!

February 14, 2012 11:12 PM
 

Kelsor said:

Thank you very much Aaron. You're a great help :D

March 3, 2012 11:06 PM
 

Dean said:

Thanks Aaron! I had the same issue that started witn an install of Server 2008 Standard from a DVD that failed because it was looking for a sqlncli.msi for Server 2008R2 on the 2008 DVD. What a mess. Glad to have it behind me now.

March 5, 2012 4:14 PM
 

Dave said:

Aaron - you're a champ, thanks so much for this information it was invaluable...!

March 9, 2012 6:14 AM
 

It’s never easy is it? « Meredith Ryan said:

March 16, 2012 2:28 PM
 

Banx said:

Genius. Thank You!

March 21, 2012 6:33 PM
 

jeff chen said:

I have the same problem, it bother me a lot, now I have solved it by the way mentioned above, thanks

March 22, 2012 3:52 PM
 

Theo said:

I tried running the bat file but it fails with the message

"_R" is not recognized as an internal or external command, operable program or batch file"

The underscore is a square symbol on screen rather than an alpha character.

I ran the bat file as an administrator, but got same error.

I found the MsDtsServer100 service was running so I stopped it. But still the same error.

The bat file is sitting on C:\ root folder, should it be in a specific folder ?

I created the .bat file using Rob Farley's Powershell Script and the bat file name created is uninstallR2.bat

Has anyone else used Rob's script? and got the above issue.

March 25, 2012 11:29 AM
 

John B. said:

Thank you very much.  I owe you 3 handfuls of hair that have remained on my head...

March 30, 2012 7:49 PM
 

C. said:

My SQL Server installation wasn't even broken, but the uninstaller kept giving me the same selection of features to uninstall over and over. I just wanted SQL Server to be gone completely from my system. Your Howto solved that, thanks.

April 6, 2012 6:07 PM
 

Crocky said:

Same for me!

Big Thank to you...

April 17, 2012 3:25 PM
 

Sean said:

Very helpful, thanks Aaron

April 18, 2012 5:23 PM
 

P'PLOY said:

โคตรเทพ อ่ะ ใช้แล้ว Uninstall ได้เลยค่ะ ขอบคุณมากนะคะ

April 20, 2012 12:12 PM
 

PJK said:

Your blog ... helped tremendously ... unfortunately Ifound it after I did proceed down the rathole and won't get the time back.  My problem was a 2008R2 upgrade on a cluster that lost some binaries in the ftp ... the upgrade failed at the PONR with the INSTANCE.INACTIVE at the new version and the INSTANCE of the 2008.  Long story short ... I tried repairing, tried upgrading again, unistall of the engine,replication... finally removing the 2008 node from the cluster, removed all the 2008 and got caught in still and the INTANCE.INACTIVE and the final vicous removal of 2008R2 ..  In the wee hours of the a.m.  I came across your blog and finally got the remnants removed via the msiexec.exe /x route... had I found your article earlier ... it would have kept me from removing the node and the 2008.  This article applies to any version of 2008R2 and its removal.

April 22, 2012 2:26 PM
 

PJK said:

Re-title your article ... End the Nightmare of removing 2008R2 and Beyond

April 22, 2012 2:42 PM
 

Romulus said:

Thanks! You saved me a lot of time!

April 22, 2012 3:49 PM
 

Anonymous said:

Thanks a lot ..you are a life savior...

April 24, 2012 1:44 PM
 

David said:

The manual uninstall worked, UGLY, but it worked!

May 7, 2012 5:09 PM
 

Michael_M said:

Hi Aaron,

you just saved my life , ok not my life but my weekend.

Thx.

Michael

May 13, 2012 5:53 AM

Leave a Comment

(required) 
(optional)
(required) 
Submit

About AaronBertrand

...about me...

This Blog

Syndication

Powered by Community Server (Commercial Edition), by Telligent Systems
  Privacy Statement