Jaa


SharePoint-klusterin tietokantapalvelimen muuttaminen

Yhteenveto

SharePoint-klusterissa tietokannat on ehkä siirrettävä yhdestä SQL Server suorittavasta palvelimesta toiseen. Jos et käytä SQL Server asiakastunnusta SharePoint-asennuksen aikana tai jos sinun on nimettävä tietokantapalvelin uudelleen eri syistä (esimerkiksi suojausrikkomuksen jälkeen), vaihda tietokantapalvelin tämän artikkelin ohjeiden mukaisesti.

Hyvän suunnittelun ja suuren käytettävyyden avulla voit suorittaa nämä vaiheet tuotantoympäristössä ilman, että sinun tarvitsee pysäyttää kaikkia palveluita.

Tietokantapalvelimen vaihtaminen

Tässä artikkelissa oletetaan, että kaikkia SharePoint-tietokantoja isännöidään yhdessä SQL Server esiintymässä. Säädä näiden vaiheiden parametreja ympäristösi edellyttämällä tavalla.

Ennen kuin aloitat, luo määritystietokannasta varmuuskopio vianmääritystä varten siltä varalta, että SharePoint-klusteria ei voi käyttää, kun suoritat vaiheet.

Tärkeää

Varmista ennen aloittamista, että ymmärrät tämän toimintasuunnitelman. Jos SharePoint-klusteria ei voi käyttää kokonaan tai jos määritystietokanta vioittuu, toiminto on palautettava uusimmasta klusterin varmuuskopiosta.

Vaihe 1: Luo uusi SQL-alias kaikkiin klusterin SharePoint-palvelimiin

Voit tehdä tämän seuraavasti:

  1. Varmista, että käytät käyttäjätiliä, joka on seuraavan jäsen:
    • Järjestelmänvalvojat-ryhmä
    • db_owner kiinteä tietokantarooli
  2. Käynnistä SQL Server Client Network Utility (cliconfg.exe). Tämä apuohjelma sijaitsee yleensä C:\Windows\SysWOW64 (32-bittinen) tai C:\Windows\System32 (64-bittinen) kansiossa.
  3. Varmista Yleiset-välilehdessä , että TCP/IP on käytössä.
  4. Valitse Alias-välilehdeltäLisää.
    HuomautusNäyttöön avautuu Lisää verkkokirjaston määritys - ikkuna.
  5. Kirjoita Palvelimen tunnus -ruutuun uuden SQL Server nimi.
  6. Valitse Verkkokirjastot-alueellaTCP/IP.
  7. Kirjoita Yhteysparametrit-alueenPalvelimen nimi -ruutuun SQL Server suoritettavan uuden palvelimen täydellinen toimialuenimi ja valitse sitten OK.
  8. Toista vaiheet 2–7 kaikissa SharePoint-palvelimilla, jotka muodostavat yhteyden tietokantoja isännöivän SQL Server esiintymään.

Vaihe 2: Osoita SharePoint-tietokannat uuteen SQL-aliakseen

Tämä vaihe muuttaa SQL Server esiintymäosoitinta kaikissa SharePoint-tietokannoissa. Jos haluat tallentaa tietokannat eri SQL Server, muokkaa komentosarjaa vastaavasti.

Tärkeää

SharePointin kokoonpanotietokannan ja keskitetyn hallinnan sisältötietokannan on sijaittava samassa SQL Server esiintymässä.
Jos haluat muuttaa SQL Server esiintymäosoitinta, suorita seuraava PowerShell-komentosarja laajennetussa SharePoint Management Shell -ikkunassa:

$SPDBs = Get-SPDatabase  
 ForEach ($DB in $SPDBs)  
 {  
     $DB.ChangeDatabaseInstance('SPSQLRenamed')  
 }  

Vahvista muutos suorittamalla seuraava PowerShellin cmdlet-komento laajennetussa SharePoint Management Shell -ikkunassa:

Get-SPDatabase | Select Name,Server  

Sinun pitäisi saada seuraavan esimerkin kaltainen tulos:

Näyttökuva tietokannan tulostuksesta suoritettuaan asianmukaisen PowerShellin cmdlet-komennon laajennetussa SharePoint Management Shell -ikkunassa.

Vaihe 3: Osoita verkkosovellusten oletustietokantaesiintymä uuteen SQL Server esiintymään

Tämä vaihe on pakollinen, jotta kun luot tietokantoja määrittämättä tietokantapalvelinta, ne eivät muodosta yhteyttä vanhaan SQL Server esiintymään.

Seuraava toimintasuunnitelma osoittaa kaikki tietokannat samaan SQL Server esiintymään (joka toimii määritystietokannassa). Muokkaa tätä komentosarjaa tarpeitasi vastaavaksi.

Suorita seuraava PowerShell-komentosarja laajennetussa SharePoint Management Shell -ikkunassa:

$ConfigDB = Get-SPDatabase | ?{$_.Name -eq 'SharePoint_Config'}  
 $WebApps = Get-SPWebApplication -IncludeCentralAdministration  
 ForEach ($WebApp in $WebApps)  
 {  
     $WebApp.Parent.DefaultDatabaseInstance = $ConfigDB.ServiceInstance  
     $webapp.Parent.Update()  
     $webapp.Update()  
 }  

Vahvista muutos suorittamalla seuraava PowerShellin cmdlet-komento laajennetussa SharePoint Management Shell -ikkunassa:

$webapps = Get-SPWebApplication -IncludeCentralAdministration  
 foreach ($webapp in $webapps)  
 {  
     Write-host "WebAppUrl: $($webapp.DisplayName)`tDefaultDatabaseInstance: $($webapp.Parent.DefaultDatabaseInstance.DisplayName)"  
 }  

Sinun pitäisi saada tulos, joka muistuttaa seuraavaa esimerkkiä:

Näyttökuva tietokantaesiintymän tulostuksesta suoritettuaan asianmukaisen PowerShellin cmdlet-komennon laajennetussa SharePoint Management Shell -ikkunassa.

Vaihe 4: Hajautetun välimuistin klusterimäärityksen muuttaminen

Tärkeää

Tässä vaiheessa kuvataan, miten voit muokata suoraan SharePointin määritystietokantaa. Tietokannan suoraa muokkaamista ei yleensä tueta useimmissa SharePointiin liittyvissä tietokannoissa. Tässä määritetyt toiminnot ovat sallittuja vain tätä tarkoitusta varten. Emme myönnä oikeutta tehdä muita muutoksia näiden vaiheiden avulla.

Voit tehdä tämän seuraavasti:

  1. Hae nykyinen määritysobjekti SQL Server suorittävästa palvelimesta käyttämällä seuraavaa SQL-kyselyä:

    SELECT [ID],[Properties]  
    FROM [SharePoint_Config].[dbo].[Objects]  
    WITH (NOLOCK)  
    WHERE Properties like '%_cacheConfigStorageLocation%'  
    
  2. Kysely palauttaa yhden rivin, jossa on kaksi saraketta. Toinen sarake koskee määrityskohteen GUID-tunnusta ja toinen määrityskohteen sisältöä, kuten seuraavassa esimerkissä:

    <object type="Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheClusterInfo, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=Token"><fld type="Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheClusterConfigStorageLocation, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=Token" name="_cacheConfigStorageLocation"><object type="Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheClusterConfigStorageLocation, Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=Token"><sFld type="String" name="_provider">SPDistributedCacheClusterProvider</sFld><sFld type="String" name="_connectionString">Data Source=SPSQLRenamed;Initial Catalog=SharePoint_Config;Integrated Security=True;Persist Security Info=False;Enlist=False;Pooling=True;Min Pool Size=0;Max Pool Size=100;PoolBlockingPeriod=Auto;Asynchronous Processing=False;Connection Reset=True;MultipleActiveResultSets=False;Replication=False;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;Load Balance Timeout=0;Packet Size=8000;Type System Version=Latest;Application Name=".Net SqlClient Data Provider";User Instance=False;Context Connection=False;Transaction Binding="Implicit Unbind";ApplicationIntent=ReadWrite;MultiSubnetFailover=False;TransparentNetworkIPResolution=True;ConnectRetryCount=1;ConnectRetryInterval=10;Column Encryption Setting=Disabled</sFld></object></fld><sFld type="String" name="_clusterSize">medium</sFld><sFld type="Boolean" name="_enableHA">False</sFld><sFld type="Boolean" name="_isInitialized">True</sFld><sFld type="Boolean" name="_isDataCacheSecurityEnabled">False</sFld><sFld type="Boolean" name="m_DeploymentLocked">False</sFld><fld type="System.Collections.Hashtable, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=Token" name="m_UpgradedPersistedFields" /><fld name="m_Properties" type="null" /><sFld type="String" name="m_LastUpdatedUser">SP2016\Administrator</sFld><sFld type="String" name="m_LastUpdatedProcess">psconfigui (3536)</sFld><sFld type="String" name="m_LastUpdatedMachine">SP16APP1</sFld><sFld type="DateTime" name="m_LastUpdatedTime">Time</sFld><fld name="m_LastUpdatedStackTrace" type="null" /><sFld type="Int32" name="m_LastUpdatedThreadId">31</sFld><sFld type="Guid" name="m_LastUpdatedCorrelationId">CorrelationId</sFld></object>.
    
  3. Kopioi tulos Muistioon ja korvaa sitten seuraava uudella SQL Server-esiintymällä:

    Data Source=SPSQLRenamed;Initial Catalog=SharePoint_Config;
    
  4. Päivitä määritysobjekti suorittamalla seuraava SQL-komento:

    UPDATE Objects  
    SET Properties = '[content in Notepad]'  
    WHERE ID = '[GUID of the configuration object in the query result]'  
    

Vaihe 5: Valmistellut uudelleen hajautetun välimuistin palvelun kaikissa hajautetut välimuistipalvelimet

Voit tehdä tämän seuraavasti:

  1. Sulje palvelu yhdellä hajautetun välimuistin palvelimista suorittamalla seuraava PowerShellin cmdlet-komento laajennetussa PowerShell-kehotteessa:

    Use-CacheCluster  
    Stop-CacheHost -Graceful -CachePort 22233 -ComputerName $env:COMPUTERNAME  
    
  2. Odota, kunnes palvelu pysäytetään. Voit valvoa tilaa käyttämällä seuraavaa PowerShellin cmdlet-komentoa:

    Get-CacheHost  
    

    Kun palvelu pysäytetään, sinun pitäisi saada seuraavan esimerkin kaltainen tulos:

    Näyttökuva välimuistin isännän tulostuksesta sen jälkeen, kun palvelu on pysäytetty suorittamalla asianmukainen PowerShellin cmdlet-komento laajennetussa PowerShell-kehotteessa.

  3. Poista paikallinen palvelin Hajautettu välimuisti -klusterista suorittamalla seuraava PowerShellin cmdlet-komento:

    Remove-SPDistributedCacheServiceInstance  
    
  4. Palauta paikallinen palvelin Hajautettu välimuisti -klusteriin suorittamalla seuraava PowerShellin cmdlet-komento:

    Add-SPDistributedCacheServiceInstance  
    
  5. Avaa rekisterin Kirjoitusavustaja ja varmista sitten, että HKLM\SOFTWARE\Microsoft\AppFabric\V1.0\Configuration-avaimen ConnectionString-arvo on päivitetty. Tässä on esimerkki:

    Näyttökuva Rekisterin Kirjoitusavustaja, joka varmistaa, että HKLM\SOFTWARE\Microsoft\AppFabric\V1.0\Configuration-avaimen ConnectionString-arvo on päivitetty.

  6. Toista vaiheet 1–5 kaikilla muilla Hajautetun välimuistin klusterin palvelimilla.

Vaihe 6: Poista viittaus vanhaan palvelimeen

Voit tehdä tämän suorittamalla seuraavan PowerShellin cmdlet-komennon laajennetussa SharePoint Management Shell -ikkunassa:

$OldServer = Get-SPServer | ?{$_.Address -eq '<The name of the SQL Server to be removed>'}  
 $OldServer.Delete()  

Vaihe 7: Tarkista muutos

Voit varmistaa tietokantapalvelimen muuttamisen suorittamalla seuraavan cmdlet-komennon:

Get-SPServer  

Sinun pitäisi saada tulos, joka muistuttaa seuraavaa esimerkkiä:

Näyttökuva palvelimen tulostuksesta, kun olet suorittanut asianmukaisen cmdlet-komennon tietokantapalvelimen onnistuneen muuttamisen varmistamiseksi.

Lisätietoja

Tarvitsetko lisää ohjeita? Siirry SharePointin yhteisöön.