Living a SharePoint life

Thursday, October 29, 2015

Latest release of the SPBestWarmUp Script available

I finished the updates on the latest version of the SPBestWarmUp script and we’re heading version 2.0 (Stockholm). You can get it here on Codeplex.

SPBestWarmUp is a PowerShell script that will load all of your SharePoint web sites. By doing so it helps to populate the IIS and the asp.net caches. This will speed up accessing your server and give your users a better overall experience.

Change log:
  • Removed the Internet Explorer to fetch webpages and switched instead to the Invoke-WebRequest Cmdlet. IE will be deprecated in the future anyway.
  • Collecting all relevant Urls prior fetching them from the server.
  • Temporarily removed the ability to use own Urls. Will be added in the future as a parameter and/or as a file. However, if you look at the code, you’ll find it isn’t hard to write your own little patch if you need to.
The code is marked as beta. To use it, collect a copy from the source repository.

Feedback is welcome. If you find any issue, please use the issues panel on the Codeplex project site.

Wednesday, October 21, 2015

Change the SQL recovery model in bulk with the PowerShell

Sometimes you need to configure settings on your SQL server in bulk, like e.g. the recovery model. In my case, we needed to change all databases to the Full recovery model, due to the usage of Always-On. Scince SQL 2012 there is a great way to do this with the PowerShell.

First open a Powershell and see if the SQL PowerShell module is loaded.
Get-Module SQLPS
If it isn't loaded, do so by using
Import-Module SQLPS
For scripts you should check if the module is loaded before you import it like this:

if ((Get-Module "SQLPS" -ea silentlycontinue) -eq $null)
{
    Import-Module SQLPS -DisableNameChecking
}
Now you can change to the SQL server by simply entering SQLSERVER:

Use ls or dir to see what options you have

Change the 'directory' with cd SQL. This way you go to the SQL server configuration. Do so as well for the servers host name and the SQL server instance, until you you enter the databases directory. Here you'll find all the databases hosted by the SQl server instance you choose. Now we can run the following script to change the recovery model in bulk.
foreach ($db in ls) {
  if ($db.RecoveryModel -ne "Full") {
    $db.RecoveryModel = "Full"
    $db.Alter()
  }
}

Featured Post

The Retro Powershell - Looking good in 8-Bit | Part 1

I wrote a little script that, when placed in your PowerShell Profile, will print a message similar to the old boot message you got from you...