Mergecontentdbs: operazione Stsadm (Office SharePoint Server)

Descrizione

Consente di spostare una raccolta siti da un database del contenuto a un altro quando vengono specificati i parametri sourcedatabasename e destinationdatabasename.

I database di origine e di destinazione devono trovarsi nella stessa istanza di Microsoft SQL Server e devono essere collegati alla stessa applicazione Web. Per ottenere prestazioni ottimali, spostare non più di 250 raccolte siti alla volta. Lo spostamento simultaneo di un numero maggiore di raccolte siti può ridurre le prestazioni in modo significativo.

Nota

L'operazione mergecontentdbs è stata introdotta la prima volta in Microsoft Office SharePoint Server 2007 Service Pack 1.

Importante

L'aggiornamento cumulativo di aprile risolve i problemi noti dell'operazione mergecontentdbs di Stsadm. Per informazioni dettagliate sul problema, vedere Il comando STSADM MergeContentDBs può causare danneggiamento del database Windows SharePoint Services 3.0. Se si prevede di unire o dividere database del contenuto, è consigliabile installare l'aggiornamento cumulativo di aprile.

Sintassi

stsadm -o mergecontentdbs

-url <URL name>

-sourcedatabasename <source database name>

-destinationdatabasename <destination database name>

[-operation] {1-3}

**      1 - Analyze (default)**

**      2 - Full database merge**

**      3 - Read from file**

[-filename] <file generated from stsadm -o enumsites>

Parametri

Nome del parametro

Valore

Obbligatorio

Descrizione

url

Un URL valido, ad esempio "http://*nome_server*"

URL dell'applicazione Web di cui si desidera unire i database.

sourcedatabasename

Nome di database valido, ad esempio "WSS_Content_1"

Nome del database da cui verranno spostate le raccolte siti.

destinationdatabasename

Nome di database valido, ad esempio "WSS_Content_2"

Nome del database in cui verranno spostate le raccolte siti.

operation

Uno dei valori seguenti:

  • 1 - Analyze

  • 2 - Full database merge

  • 3 - Read from file

No

1 - Analyze: indica che nella finestra di comando vengono visualizzati il numero corrente di raccolte siti, le dimensioni del database, il numero massimo di raccolte siti e il numero di raccolte siti che possono essere aggiunte prima che venga raggiunto il numero massimo di raccolte siti per ogni database del contenuto.

Nella finestra di comando viene inoltre visualizzato un suggerimento riguardante il database del contenuto da utilizzare per l'origine e il database del contenuto da utilizzare per la destinazione, presupponendo che verranno spostate tutte le raccolte siti presenti nel database. Questo suggerimento si basa sul database del contenuto che contiene meno dati e che consente pertanto uno spostamento più rapido.

Si tratta dell'impostazione predefinita.

2 - Full database merge: consente di unire l'intero database del contenuto di un database con un altro. Al termine dell'operazione, il database del contenuto di origine esisterà ancora in Microsoft SQL Server e risulterà ancora collegato all'applicazione Web senza tuttavia contenere alcuna raccolta siti.

3 - Read from file: consente di spostare solo un sottoinsieme di raccolte siti dal database di origine al database di destinazione. Le raccolte siti da spostare vengono elencate in un file specificato con il parametro filename.

filename

Nome di file valido, ad esempio "sites.xml"

No

Specifica una determinata raccolta siti nel database del contenuto di origine che si desidera spostare nel database di destinazione

Questa informazione viene recuperata mediante il parametro databasename dell'operazione Enumsites.

Nota

Il parametro databasename è stato introdotto la prima volta in Microsoft Office SharePoint Server 2007 con Service Pack 1.

Nota

È possibile utilizzare l'operatore di reindirizzamento ">" per acquisire l'output XML dell'operazione enumsites in un file di testo.

Osservazioni

Prima di eseguire l'operazione Stsadm mergecontentdbs:

  • Lo spazio libero disponibile deve essere pari almeno a tre volte le dimensioni della raccolta siti di origine. Per determinare le dimensioni della raccolta siti, utilizzare l'operazione Enumsites: operazione Stsadm (Office SharePoint Server).

  • I dati devono essere sincronizzati tra la caratteristica per i profili e i siti nei database. Per effettuare questo aggiornamento, eseguire l'operazione preparetomove.

Per spostare una raccolta siti da un database a un altro, è necessario essere membri del gruppo Amministratori farm e del gruppo di amministratori locali, nonché disporre dell'autorizzazione Controllo completo per tutte le raccolte siti che è necessario spostare. Per concedere questa autorizzazione, in Amministrazione centrale fare clic su Gestione applicazioni, Protezione applicazione e quindi su Criteri per l'applicazione Web. L'account utilizzato per eseguire questa procedura deve essere un membro del ruolo predefinito del database db_owner in SQL Server.

Dopo aver completato lo spostamento del sito, rimuovere o modificare il livello di autorizzazione dell'account utilizzando la pagina Criteri per l'applicazione Web. Se l'account viene utilizzato per altri servizi, reimpostare il livello di autorizzazione originale.

Se non si dispone delle autorizzazioni appropriate per eseguire questa operazione, verrà visualizzato il messaggio di errore seguente: “Esiste già un altro sito all'indirizzo /sites/test. Eliminare tale sito prima di provare a creare un nuovo sito con lo stesso URL, scegliere un nuovo URL oppure creare una nuova inclusione per il percorso specificato in origine".

Dopo aver eseguito lo spostamento, è necessario eseguire il comando iisreset /noforce in ogni server Web front-end della farm. Se è stata spostata una quantità elevata di dati, è possibile ridurre le dimensioni dei database SQL e dei registri delle transazioni. Per ulteriori informazioni sulla riduzione delle dimensioni dei database SQL, vedere Procedura: ridurre le dimensioni di un database (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=102959&clcid=0x410).

Esempi

Unire database del contenuto utilizzando il parametro filename

Nell'esempio seguente WSS_Content_1 e WSS_Content_2 sono i nomi dei database del contenuto.

Per creare un elenco di siti nel file sites.xml utilizzando l'operatore di reindirizzamento ">", utilizzare la sintassi seguente:

stsadm -o enumsites -url http://<servername> –databasename WSS_Content_1 > sites.xml

Nota

L'operatore di reindirizzamento ">" consente di reindirizzare l'output a un file di testo denominato sites.xml. Sarà quindi possibile modificare il file sites.xml in modo da ottenere l'elenco delle raccolte siti da spostare.

Per spostare le raccolte siti specificate nel file sites.xml da un database del contenuto a un altro, utilizzare la sintassi seguente:

stsadm -o mergecontentdbs -url http://<nomeserver> -sourcedatabasename WSS_Content_1 -destinationdatabasename WSS_Content_2 -operation 3 -filename sites.xml

Nota

Il numero 3 nel parametro operation corrisponde a "Read from file".

Dopo aver spostato la raccolta siti e per verificare che le modifiche siano state applicate a tutti i server Web front-end della farm, eseguire il comando seguente da un prompt dei comandi:

iisreset /noforce

Vedere anche

Altre risorse

Mergecontentdbs operation may cause database corruption