How to move the SharePoint Search Service Application database

For one of our customers there was the need to move all Sharepoint 2010 databases to another instance within SQL Server 2008 R2. For all the content databases this was no issue. For the Search Service provider this was a little different. On the internet I was not able to find any workable solution for this problem or at least I could not find it. The crawler processes did not want to stop, start or restart. The way I solved this issue is as follows:

Step 1

In “Sharepoint 2010 Central Administration”, under “Application Management” select “Specify the default database server”. Change your default database server under “Content Database Server” to the new SQL Instance, for example “SQLSERVER/SQLInstance” and confirm this change.

Step 2

From “SharePoint 2010 Central Administration”, “Application Management”, “Manage Service Applications”, Select the “Search Service Application” and select “Content Sources”.  Document all settings for all content sources used.

Step 3

Because the crawlers weren’t running, restartable or startable I remove the Search Service Application. In PowerShell:

$Search = Get-SPServiceApplication |?{$_.name -eq “Search Service Application”}
Remove-SpServiceApplication -Identity $search.Id –RemoveData

And if Powershell won’t work use STSADM:

In PowerShell: Get-SPServiceApplication |?{$_.name -eq “Search Service Application”} to get the ID.

Then

STSADM –o deleteconfigurationobject –id “<the id from the previous powershell command>”

Step 4

Create a new Search Service Application with PowerShell, this will automatically use the new default entered in Step 1. This part I found on http://www.idocs.info/index.php/2010/06/create-a-search-service-moss-2010-with-powershell/

In PowerShell:

# 1.Setting up initial variables.
write-host 1.Setting up initial variables.
$Search_Service_name = “Search Service Application”
$Search_Service_account = “<SearchServiceAccount>”
$Search_Service_Instance = get-spenterprisesearchserviceinstance -local
$err = $null

# Start Services search services for Search_Service_Instance
write-host Start Services search services for Search_Service_Instance
Start-SPEnterpriseSearchServiceInstance -Identity $Search_Service_Instance

# 2.Create an Application Pool.
write-host 2.Create an Application Pool.
$AppPool = new-SPServiceApplicationPool -name $Search_Service_name”_AppPool” -account $Search_Service_account

# 3.Create the SearchApplication and set it to a variable
write-host 3.Create the SearchApplication and set it to a variable
$SearchApplication = New-SPEnterpriseSearchServiceApplication -Name $Search_Service_name -applicationpool $AppPool -databasename $Search_Service_name”_AdminDB”

#4 Create search service application proxy
write-host 4 Create search service application proxy
$Search_Service_Proxy = new-spenterprisesearchserviceapplicationproxy -name $Search_Service_name”ApplicationProxy” -Uri $SearchApplication.Uri.AbsoluteURI

# 5.Provision Search Admin Component.
write-host 5.Provision Search Admin Component.
set-SPenterprisesearchadministrationcomponent -SearchApplication $SearchApplication  -searchserviceinstance $Search_Service_Instance

# 6.Create a new Crawl Topology.
write-host 6.Create a new Crawl Topology.
$CrawlTopo = $SearchApplication | New-SPEnterpriseSearchCrawlTopology

# 7.Create a new Crawl Store.
write-host 7.Create a new Crawl Store.
$CrawlStore = $SearchApplication | Get-SPEnterpriseSearchCrawlDatabase

# 8.Create a new Crawl Component.
write-host 8.Create a new Crawl Component.
New-SPEnterpriseSearchCrawlComponent -CrawlTopology $CrawlTopo -CrawlDatabase $CrawlStore -SearchServiceInstance $Search_Service_Instance

# 9.Activate the Crawl Topology.
write-host 9.Activate the Crawl Topology.
do
{
$err = $null
$CrawlTopo | Set-SPEnterpriseSearchCrawlTopology -Active -ErrorVariable err
if ($CrawlTopo.State -eq “Active”)
{
$err = $null
}
Start-Sleep -Seconds 10
}
until ($err -eq $null)

# 10.Create a new Query Topology.
write-host 10.Create a new Query Topology.
$QueryTopo = $SearchApplication | New-SPenterpriseSEarchQueryTopology -partitions 1

# 11.Create a variable for the Query Partition
write-host 11.Create a variable for the Query Partition
$Partition1 = ($QueryTopo | Get-SPEnterpriseSearchIndexPartition)

# 12.Create a Query Component.
write-host 12.Create a Query Component.
New-SPEnterpriseSearchQueryComponent -indexpartition $Partition1 -QueryTopology $QueryTopo -SearchServiceInstance $Search_Service_Instance

# 13.Create a variable for the Property Store DB.
write-host 13.Create a variable for the Property Store DB.
$PropDB = $SearchApplication | Get-SPEnterpriseSearchPropertyDatabase

# 14.Set the Query Partition to use the Property Store DB.
write-host 14.Set the Query Partition to use the Property Store DB.
$Partition1 | Set-SPEnterpriseSearchIndexPartition -PropertyDatabase $PropDB

# 15.Activate the Query Topology.
write-host 15.Activate the Query Topology.
do
{
$err = $null
$QueryTopo | Set-SPEnterpriseSearchQueryTopology -Active -ErrorVariable err -ErrorAction SilentlyContinue
Start-Sleep -Seconds 10
if ($QueryTopo.State -eq “Active”)
{
$err = $null
}
}
until ($err -eq $null)
Write-host “Your search application $Search_Service_name is now ready”

Step 5

All Search Service Application services, processes and settings should be in-place now. Configure your content sources as documented in Step 2. And ready you are.

SharePoint and SQL connections presenting no data

During development of InfoPath forms together with SharePoint 2010 some of the data connections just weren’t retrieving any data.

The catch was the SharePoint Central Administration – General Application Settings – under InfoPath Forms Services – Configure InfoPath Form Services page. There is one setting “Embedded SQL Authentication” the checkbox “Allow embedded SQL authentication” should be checked.

After correcting this problem the SQL information was fetched without any problem and the data connections where working fine.

Blank in “Logon script” within User Manager

Sometimes Microsoft messages are great, most  of the times they are not, but they are getting better on it. When you get the following strange message:

Spatie in LogonScript 1

your only option is to click “OK” and you get a second selfexplaining message:

 Spatie in LogonScript 2

Your only option will be clicking “End Now” and nothing happens and the login will not be succesful.

The cause is a blank in de “Logon Script” field within the users profile in Active Directory Users and Computers. This post shared with you all just to save you time 🙂

More information can be found at http://support.microsoft.com/kb/824204

PepperByte sponsordag, 6 juni 2009, TT circuit Assen

6 juni 2009, de dag waarop PepperByte haar jaarlijkse sponsordag heeft op TT Circuit Assen. Middelpunt van de dag is evenals vorig jaar Jeroen Tielen. Jeroen rijdt SuperCup 600 en wil deze dag graag laten zien dat hij niet voor niets een nieuwe motor heeft.

Het weer werkt mee en de dag begint zonnig. Er staat wel wat wind maar dat mag de pret niet drukken.

De PepperCrew leden worden rond 09:00 verwacht en Jeroen heeft zijn eerste kwalificatie training om even na 09:30.

Zoals jullie hiernaast kunnen zien, het nieuwe uiterlijk van Jeroen’s motor ziet er prima uit. Dat is in ieder geval goed geregeld.

 

Tussen 08:45 en 09:45 komen de meeste Crewleden aan en de begroeting is zoals altijd hartelijk.

DSC_1459

DSC_1456 

Natuurlijk moet er het nodige aan voorbereiding gedaan worden. Zoals jullie kunnen zien zorgt Jeroen goed voor zijn spullen.

 

 

 

DSC_1461

Om 09:41 rijdt Jeroen zijn eerste kwalificatie training en wordt hij 7e in zijn groep. Dat betekend dat hij straks bij de tweede kwalificatie training als nummer 1 van de tweede groep mag starten, dus eigenlijk nummer 33.

Tijdens de tweede kwalificatie gaat het nog beter dan in de eerste en Jeroen rijdt heel ontspannen 3 seconden van zijn persoonlijk record af. Hij kwalificeert zich 15e in de A groep. Petje afvoor Jeroen, de meeste PepperCrew leden doen hem dat niet na. De nieuwe banden hebben Jeroen in de tweede kwalificatie goed geholpen.

 

 

 

Tussen de tweede training en de race gaat een deel van de PepperCrew gezellig met Andy een stropdas proberen te kopen in het centrum van Assen. Daniel ziet natuurlijk weer iets wat precies zijn smaak is.

Voor Andy is het ook in Assen erg moeilijk een kleur stropdas te vinden die aansluit bij de jurk die zijn vriendin al gekocht heeft voor het huwelijksfeestje dat ze 12 juni gaan bezoeken.

Om een lang verhaal kort te maken, Andy vindt ook in Assen geen geschikte stropdas.

 

Jeroen is erg ontspannen voor de race en komt bijna te laat. Gelukkig doet Jan de deur open en schrikt Jeroen van de deelnemers van de vorige rit die al voor de deur staan. Gelukkig is hij op tijd om de race te rijden.

De race verloopt voor Jeroen goed, hij verliest in een sterk veld maar 4 plaatsen en wordt 19e, Jeroen is hier erg tevreden mee en we zien terug op een gezellig en succesvolle dag. 3 seconden van je persoonlijk record afrijden is een prima prestatie.

Ik heb heb erg genoten van deze dag. Ben benieuwd hoe volgende week gaat worden in Antwerpen.

Bedankt allemaal en tot dinsdag in Antwerpen!

Groetjes,

Silvonton