The post New Year Technology Maintenance appeared first on Glenn Berry.
]]>Many devices do a pretty decent job of automatically pulling down and installing updates by themselves (or they can be configured to do so). Despite this, you probably have a number of devices that need some attention and help.
These might include your various computers, wireless router, NAS, printers, home automation and AV gear, etc..
For Windows-based computers that are owned/managed by individuals, you should manually check for updates by clicking the “Check for Updates” button. You should also make sure that the “Give me updates for other Microsoft products when I update Windows” option is enabled, under Advanced options. This will give you updates for things like Microsoft Office. This is important to do even if the machine is supposed to automatically check for updates, since many people (especially non-computer savvy people) don’t ever manually check for updates. Many people do not leave their machines running for extended periods, so it is very common to find them woefully out of date.
Figure 1: Windows Update Dialog
Figure 2: Windows Update Advanced Options
It is also a good idea to run Windows Disk Cleanup, and click on the “Clean up system files” button. This will give you the option of cleaning up Windows Update files and even removing previous versions of Windows (in Windows 10), meaning previous semi-annual update versions. Removing those old versions can often free up 20-40GB of disk space, although you won’t be able to rollback to the old versions anymore. Be warned that running disk cleanup can take quite a bit of time, even with a fast SSD.
Figure 3: Disk Cleanup Default Dialog
Figure 4: Disk Cleanup System Files Dialog
After getting Windows updated and running Disk Cleanup, you should make an effort to see if there are any BIOS/firmware or driver updates for each device. Most large hardware vendors have utilities that you can use to automatically look for any updates, and then download and install the updates. You may have to go to the vendor’s support site to download and install the utility (or update an old version of the utility), but once you have done that, getting the latest updates is usually pretty easy.
If the machine was built from parts or is not from a major vendor, you will probably need to do some research and manual updating, once you figure out what you are dealing with. A couple of good tools to identify the components in a strange computer are CPU-Z and HWiNFO64, which you can have on a USB thumb drive. These will let you identify the motherboard model and BIOS version, along with many other components, such as video cards and storage devices. Most motherboard vendors also have utilities that can be used to check for and install the latest updates for that motherboard.
Figure 5: CPU-Z Mainboard Tab
Figure 6: HWiNFO64 System Summary
Many individual components in a system may require updates, such as video cards and storage devices. Once you know what components you are dealing with, you should be able to go to the vendor’s support site and either use a utility to check for and install updates, or simply manually do it yourself. For example, Samsung and Intel have utilities to maintain and update their storage devices and NVidia and AMD have utilities to maintain and update their video cards.
After you have updated all of your computers, you should try to update all your other updateable devices as much as you can. I’m talking about things like routers, managed network switches, printers, home automation gear, AV components and the like. Many devices will have a web interface or downloadable utility program that you can use to check for and install firmware and software updates. Often they will have a built-in method for checking for updates, buried somewhere in the setup or configuration interface. You should make the effort to find whatever method is necessary, and then check for and install updates.
Here are some links for some of the more common brands and devices you may run into.
AMD Radeon Drivers
Perhaps you are wondering why you should go to this trouble, for yourself and for your family and friends? The main reason is that it will make their devices be more secure and work better. It will also make it a little more difficult for bad things like viruses, trojans, and worms to spread so quickly in the wild. Since you are likely in the technology field if you are reading this, your friends and family probably rely on you (at least to a certain extent) for their computer and technology support. For example, if you are a DBA, that means you are “in computers”. That means you must know everything there is to know about desktop and network support, right?
The post New Year Technology Maintenance appeared first on Glenn Berry.
]]>The post SQL Server 2008 R2 SP2 CU9 appeared first on Glenn Berry.
]]>If you are running SQL Server 2008 R2, you need to be on the SP2 branch, since the SP1 branch was retired earlier this year. If you are on SQL Server 2008 R2 SP2, I think you should be planning on getting on the latest CU9 as soon as it makes sense. That does not mean you install it in Production the day it is released, but rather, you have a set procedure and test plan that you follow (just as you would for any other type of change), that you actually execute on a regular basis.
Being proactive with important updates as part of a regular, well planned and tested maintenance procedure will reduce the amount of problems you have with your system over the long term.
The post SQL Server 2008 R2 SP2 CU9 appeared first on Glenn Berry.
]]>The post Microsoft Update offering SQL Server 2012 SP1 Cumulative Update 2 appeared first on Glenn Berry.
]]>Figure 1: Update Rollup for SQL Server 2012 Service Pack 1 (KB2790947) in Microsoft Update
Microsoft Update is an optional component that you have to install on your server or client machine. Once you do that, you will get notifications about certain updates for products like Microsoft Office, Visual Studio, and SQL Server to name a few products that are covered.
When I first saw this optional update, I initially thought it was some sort of special, out-of-band QFE fix for SQL Server 2012 Service Pack 1. Then I decided to Bing the KB2790947 article that was referenced (since I don’t memorize KB article numbers like Kimberly L. Tripp does), and I discovered that it was simply SQL Server 2012 Service Pack 1 Cumulative Update 2, which was released on January 21, 2013. This is interesting (at least to me), since Microsoft has always made people jump through some hoops to get a Cumulative Update for SQL Server.
Normally, you have to first discover that a new CU has been released, then you have to find the KB article for it, and then “request the hotfix download”, after which you will get a link e-mailed to you that lets you download a self-extracting executable with the CU setup program. This whole process is somewhat obscure and complicated, and many people seem to have problems understanding how it works.
Even though I am a big proponent of staying current with SQL Server Cumulative Updates (which makes me a target for some criticism), I don’t know if I like CUs being offered as Optional Updates in Microsoft Update. I think you should have a good test and deployment plan in place for whenever you install a SQL Server Service Pack or Cumulative Update on a production SQL Server instance. The complexity of your testing and deployment plan will vary based on your resources and organization, but any testing and any specific deployment plan is much better than having someone just “accidentally” deploy a SQL Server Cumulative Update when they decide to install all of their pending Microsoft Updates.
I would much rather install a Service Pack or Cumulative Update “on purpose” during a maintenance window after the organization had gone through the testing and deployment planning process. I am curious about whether this is actually going to be a change in how SQL Server is serviced going forward, or whether this was a one time occurrence?
What do you think about this?
Update: I have heard from a contact at Microsoft about this subject. Here is what they had to say:
“This was a special case. This was to address the issue described in KB2793634. The WU will offer either CU2 (if the SP1 instance has taken a hotfix or CU to date) or an individual hotfix if not. The latter of course is to not force customers on the CU servicing train just to obtain the update.”
So, my interpretation is that nothing has really changed as far as Microsoft’s servicing policy goes, since this was just a special case to fix the issue described in KB2793634 with either SP1 CU2 or just an individual hotfix, depending on the previous patch level of your machine.
The post Microsoft Update offering SQL Server 2012 SP1 Cumulative Update 2 appeared first on Glenn Berry.
]]>The post Windows Update vs. Microsoft Update appeared first on Glenn Berry.
]]>In Figure 1, you can see where it says “You receive updates: For Windows and other products from Microsoft Update”. This means that I have installed Microsoft Update on this machine, so it will look for updates for more Microsoft products besides just the operating system itself and Internet Explorer. If you are running any of these other common Microsoft applications on your machine, I think you should also be running Microsoft Update instead of just Windows Update.
Figure 1: Windows and Microsoft Update Applet in Control Panel
Depending on what type of machine you are dealing with, you will want to use different settings for Windows/Microsoft Update. If you are dealing with mission critical, production servers, you will want your servers to be using a Windows Server Update Services (WSUS) server to get your updates instead of pulling them down directly from Microsoft over the internet. In an ideal world, your organization would have a dedicated team that would review each update that is released by Microsoft on Patch Tuesday, install it on some test machines, and then run a full suite of automated regression tests after each update, before approving individual updates to become available on the WSUS server for internal distribution. In real life, I don’t see this level of effort and attention very often.
What seems to happen quite often in real life is that people simply disable Windows Update on their servers and never install Microsoft Update. They also don’t do any manual updates on their servers. After the initial build and provisioning of the server, they never install any updates whatsoever, whether it is BIOS updates, firmware updates, driver updates, OS updates, or application updates. Personally, I think this is a mistake, actually being what I would call “server neglect”. Of course there is some risk whenever you make any modifications of any sort to a production server, but using a combination of good judgment, planning, and testing can reduce your risks significantly.
If you are using Windows or Microsoft Update, on a production server, you should change how Windows installs important updates to “Checks for updates but let me choose whether to download and install them” (as you see in Figure 2) rather than the Microsoft recommended setting of “Install updates automatically (recommended)”. This will avoid having unplanned server restarts at roughly 3:15AM on the Wednesday morning following Microsoft Patch Tuesday each month, as important updates are installed starting at 3:00AM. With this setting, you will know when new updates are available, and you can start your planning and testing process.
On the average desktop machine, you should go ahead and use the install updates automatically setting (otherwise you will probably forget, and be more vulnerable to Zero Day attacks).
Figure 2: Windows and Microsoft Update Settings
You should also make sure that the “Give me updates for Microsoft products and check for new optional Microsoft software when I update Windows” checkbox under Microsoft Update is checked.
The post Windows Update vs. Microsoft Update appeared first on Glenn Berry.
]]>The post How to Obtain and Install SQL Server Service Packs and Cumulative Updates appeared first on Glenn Berry.
]]>First, a few definitions:
RTM means Release to Manufacturing. It is the original, released build version of the product, i.e. what you get on the DVD or when you download the iso file from MSDN.
A Hotfix is designed to fix a single issue, usually after a case has been escalated through Microsoft CSS to the SQL Server Product Team.
A Cumulative Update is a cumulative package of hotfixes (usually 20-40) that also includes all previous cumulative updates for that Service Pack. Cumulative Updates are not fully regression tested. Cumulative Updates are released every eight weeks.
A Service Pack is a much larger collection of hotfixes that have been fully regression tested. Service Packs are typically released every 12-18 months.
When you first install a shiny new copy of SQL Server 2012 (or an earlier version of SQL Server) from the DVD that came with the box, what you have is the RTM build of that major version of SQL Server. Depending on how long ago that major version of SQL Server was released, that build of SQL Server that you just installed could be years old. I often run into production instances of SQL Server that are still running the RTM build of a particular major version of SQL Server, which in my opinion is both lazy and irresponsible. If you don’t do something about it, you could be on an “Unsupported Service Pack”, which means that you will only get limited troubleshooting support from Microsoft if you ever need to open a support case with Microsoft CSS. You are also more likely to run into issues that were fixed after the product went RTM.
Hotfixes don’t get added to SQL Server on a whim, they are only added after working with CSS and the Product Team, and convincing them that the issue that is prompting the hotfix is important enough to actually fix and release. Cumulative Updates are a collection of hotfixes over the previous eight weeks. When you look at the list of fixes for each Cumulative Update, you can determine whether they seem to address any issues that you have been experiencing in your environment. Then you can decide whether to go through the pain of getting them tested and installed. You can download Service Packs directly from Microsoft without making any special requests. Service Packs are cumulative, so you can go directly from RTM to SP4 without installing any intervening Service Packs. If you have Microsoft Update (which is a superset of Windows Update) installed on your machine, it will offer up SQL Server Service Packs as updates, but I prefer to obtain and install them myself.
Some organizations have a policy of only testing and deploying Service Packs (which Microsoft sometimes calls Public Cumulative Updates (PCU)), deciding to ignore any regular Cumulative Updates that are released between Service Packs. They argue that only Service Packs are fully regression tested by Microsoft, and that they don’t have the resources to test and certify Cumulative Updates with their applications and environments. They also argue that third party software vendors have not certified these Cumulative Updates for their products, which is another reason to skip them. Personally, I am against this approach. As I said before, you should look at the fix list for each Cumulative Update when it is released, and make the determination whether you need to install that CU. Generally speaking, I am biased towards trying to stay current on my Service Packs and CUs. Going through the functional testing of your applications for a Service Pack or Cumulative Update and periodically exercising your HA solution (you do have an HA solution) is a good exercise.
At any rate, how do you find out about these Cumulative Updates? One way is to read my blog or follow me on Twitter, since I am pretty good about finding them, and announcing them to the world. Fellow SQL Server MVP Aaron Bertrand (blog|twitter) also does a good job of spreading the word. You can also check the Microsoft SQL Server Release Services blog, and the SQL Server Solution Center.
Once you know that a CU for your major version and Service Pack of SQL Server has been released, you need to find the Knowledge Base (KB) article that lists the fixes and has the link where you can “View and request hotfix downloads”. Here is the KB for SQL Server 2012 RTM CU2. In the top left portion of the KB page, you will see the “View and request hotfix downloads” link.
Once you follow that link, you need to click on the “Show hotfixes for all platforms and languages” link in the center of the page. Otherwise, you will only see the hotfixes for the platform (x86, x64, or ia64) that you are running on the computer where your browser is running, which is probably your laptop or workstation. After you choose the correct packages (which can be confusing), you must provide a valid e-mail address, and fill in the CAPTCHA information. A few minutes after that, you will get an e-mail with a link to download a zip file with the Cumulative Update setup program. I always immediately unzip the file and save it in a directory structure like you see in Figure 1 (with further subdirectories for x86 and x64), so I don’t get confused later about which CU I am dealing with.
Figure 1: SQL Server 2012 Update Directories
Finally, after jumping through these small hoops, you are ready to install it on a test instance (which could be a virtual machine) just to make sure that the setup program works, and does not seem to break SQL Server. After this initial smoke test, you should do additional installs and further, more involved testing before you eventually deploy it to your Production environment during a scheduled maintenance window.
When it is time to deploy a CU in Production, you are looking at an outage of some duration, no matter what you do. At a minimum, the CU setup program will stop and start the SQL Server Service, and it could be stopped for several minutes while the CU installation is running. Sometimes, the CU setup program will want a reboot after it finishes, depending on what SQL Server components you are running. Making sure you are not running a local copy of SSMS on the instance that is being patched will help minimize the chance of a reboot. If you don’t have any high availability solution (such as AlwaysOn availability groups, database mirroring or fail-over clustering) in place, this outage could last anywhere from 5 to 20 minutes, which is kind of bad…
If you do have an HA solution in place, you can do a “rolling upgrade” where you upgrade the Witness, then the Mirror, and then the Principal (for mirroring) or each node in turn (with fail-over clustering), where you can install a CU with a couple of sub minute outages. Using database mirroring, my outages are typically 10-15 seconds for each failover for this type of maintenance.
The post How to Obtain and Install SQL Server Service Packs and Cumulative Updates appeared first on Glenn Berry.
]]>