我想知道是否有办法告诉我想要创建新mysite的数据库。
在我们的服务器中,我们为mysites SP_MySiteContent00
和SP_MySiteContent01
提供了多个数据库,依此类推。但是下面的脚本默认情况下会在SP_MySiteContent
创建所有内容。
任何人都知道如何判断它应该使用哪个数据库?
这是我的代码:
param
(
[Parameter(Mandatory=$true)]
[string]$username,
[string]$database
)
asnp *sh*
$mysite = (Get-SPSite)[0]
$context = [Microsoft.Office.Server.ServerContext]::GetContext($mysite)
$upm = New-Object Microsoft.Office.Server.UserProfiles.UserProfileManager($context)
#Create user profile
$profile = $upm.ResolveProfile($username)
if(!$profile)
{
Write-Host "$profile does not have a profile. Can't create personal site"
}
elseif($profile)
{
if($profile.PersonalSite -eq $Null)
{
$profile.CreatePersonalSite()
Write-Host "Personal site created"
}
else
{
Write-Warning "$username already has a personal site"
}
}
答案 0 :(得分:0)
看起来似乎无法直接指定内容数据库(请参阅:here),但是控制创建新mysite的内容数据库的一种可能方法是将所有其他内容数据库设置为脱机模式
例如,如果您上面列出的数据库都是您所拥有的,并且您想在“SP_MySiteContent01”中创建一个网站,那么您可以这样做:
Get-SPContentDatabase “SP_MySiteContent” | Set-SPContentDatabase –Status 1
Get-SPContentDatabase “SP_MySiteContent00” | Set-SPContentDatabase –Status 1
$profile.CreatePersonalSite()
Get-SPContentDatabase “SP_MySiteContent” | Set-SPContentDatabase –Status 0
Get-SPContentDatabase “SP_MySiteContent00” | Set-SPContentDatabase –Status 0