Mergecontentdbs: operación de Stsadm (Office SharePoint Server)
Descripción
Permite mover una colección de sitios desde una base de datos de contenido a otra cuando se especifican los parámetros sourcedatabasename y destinationdatabasename.
Las bases de datos de origen y destino deben estar en la misma instancia de Microsoft SQL Server y asociarse a la misma aplicación web. Para obtener un rendimiento óptimo, no mueva más de 250 colecciones de sitios al mismo tiempo. Si mueve más colecciones de sitios simultáneamente, el rendimiento puede disminuir enormemente.
Nota
La operación mergecontentdbs se presentó por primera vez en Microsoft Office SharePoint Server 2007 Service Pack 1.
Importante
La actualización acumulativa de abril soluciona problemas conocidos que afectan a la operación mergecontentdbs de Stsadm. Para obtener información detallada acerca del problema, vea el artículo en el que se explica que el comando mergecontentdbs de Stsadm puede provocar daños en la base de datos. Si planea combinar o dividir bases de datos de contenido, se recomienda la instalación de la actualización acumulativa de abril.
Sintaxis
stsadm -o mergecontentdbs
-url <nombre de la dirección URL>
-sourcedatabasename <nombre de base de datos de origen>
-destinationdatabasename <nombre de base de datos de destino>
[-operation] {1-3}
1 - Analizar (valor predeterminado)
2 - Combinación de base de datos completa
3 - Leer desde archivo
[-filename] <archivo generado a partir de stsadm -o enumsites>
Parámetros
Nombre de parámetro |
Valor |
¿Necesario? |
Descripción |
url |
Una dirección URL válida, como "http://*nombre_de_servidor*" |
Sí |
Dirección URL de la aplicación web cuyas bases de datos desea combinar. |
sourcedatabasename |
Un nombre de base de datos válido, como "WSS_Contenido_1" |
Sí |
El nombre de la base de datos desde la que se moverán las colecciones de sitios. |
destinationdatabasename |
Un nombre de base de datos válido, como "WSS_Contenido_2" |
Sí |
El nombre de la base de datos a la que se moverán las colecciones de sitios. |
operation |
Cualquiera de los siguientes valores:
|
No |
1 - Analizar: indica que la ventana de comandos muestra el número actual de colecciones de sitios, el tamaño de la base de datos, el número máximo de colecciones de sitios y el número de colecciones de sitios que se pueden agregar antes de alcanzar el número máximo de colecciones de sitios para cada base de datos de contenido. Además, se muestra una recomendación en la ventana de comandos en relación con la base de datos de contenido que se debe usar para el origen y la base de datos de contenido que se debe usar para el destino, suponiendo que se muevan todas las colecciones de sitios de la base de datos. Esta recomendación se basa en la base de datos de contenido que contiene menos datos y, por lo tanto, la que se movería con mayor rapidez. Éste es el valor predeterminado. 2 - Combinación de base de datos completa: combina la base de datos de contenido completa de una base de datos a otra. Una vez completada la operación, la base de datos de contenido de origen sigue existiendo en Microsoft SQL Server y permanece asociada a la aplicación web. Simplemente, no tiene colecciones de sitios. 3 - Leer desde archivo: mueve sólo un subconjunto de las colecciones de sitios desde la base de datos de origen a la de destino. Las colecciones de sitios que se van a mover se deben enumerar en un archivo que se especifica con el parámetro filename. |
filename |
Un nombre de archivo válido, como "sitios.xml" |
No |
Especifica una colección sitios concreta en la base de datos de contenido de origen que desea mover a la base de datos de destino Esta información se obtiene mediante el parámetro databasename de la operación Enumsites. Nota El parámetro databasename se introdujo por primera vez en Office SharePoint Server 2007 con Service Pack 1. Nota Puede usar el operador de redirección ">" para capturar el resultado XML de la operación enumsites en un archivo de texto. |
Comentarios
Antes de realizar la operación mergecontentdbs de Stsadm, debe:
Debe tener espacio libre disponible que sea al menos tres veces el tamaño de la colección de sitios de origen. Use la Enumsites: operación Stsadm (Office SharePoint Server) para determinar el tamaño de la colección de sitios.
Asegúrese de que los datos están sincronizados entre la característica de perfiles y los sitios en las bases de datos. Para hacerlo, ejecute la operación preparetomove.
Para mover una colección de sitios de una base de datos a otra, debe ser miembro de los grupos Administradores de la granja de servidores y Administradores locales, y debe tener el permiso Control total concedido para todas las colecciones de sitios que sea necesario mover. Para conceder este permiso, en Administración central, haga clic en Administración de aplicaciones, en Seguridad de aplicaciones y, a continuación, en Directiva de aplicación web. La cuenta que use para realizar este procedimiento debe ser miembro de la función de base de datos fija db_owner en SQL Server.
Una vez que se haya movido el sitio correctamente, quite o cambie el nivel de permisos de la cuenta mediante la página Directiva de aplicación web. Si la cuenta se usa para otros servicios, restablézcala al nivel de permisos original.
Si no tiene los permisos correctos para realizar la operación, recibirá un mensaje de error en que se indica que los sitios se están moviendo. Ya existe otro sitio en /sites/test. Elimine este sitio antes de intentar crear uno con la misma dirección URL, elija una nueva dirección URL o cree una nueva inclusión en la ruta de acceso especificada originalmente.
Una vez completado el traslado, debe ejecutar el comando iisreset /noforce en cada uno de los servidores cliente web de la granja de servidores. Si se ha movido una gran cantidad de datos, es posible que desee reducir los registros de transacciones y las bases de datos de SQL. Para obtener más información acerca de cómo reducir las bases de datos de SQL, vea la información sobre cómo reducir una base de datos (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=102959&clcid=0xC0A).
Ejemplos
Combinar bases de datos de contenido mediante el parámetro filename
Para este ejemplo, WSS_Contenido_1 y WSS_Contenido_2 son los nombres de las bases de datos de contenido**.**
Para crear una lista de sitios en el archivo sitios.xml mediante la operación de redirector ">", use la siguiente sintaxis:
stsadm -o enumsites -url http://<nombreDeServidor> –databasename WSS_Contenido_1 > sitios.xml
Nota
El operador de redirector ">" redirige el resultado a un archivo de texto denominado sitios.xml. A continuación, puede editar el archivo sitios.xml para enumerar las colecciones de sitios que se deben mover.
Para mover las colecciones de sitios especificadas en el archivo sitios.xml de una base de datos de contenido a otra, use la siguiente sintaxis:
stsadm -o mergecontentdbs -url http://<nombreDeServidor> -sourcedatabasename WSS_Content_1 -destinationdatabasename WSS_Content_2 -operation 3 -filename sites.xml
Nota
El número 3 del parámetro operation corresponde a "Leer desde archivo".
Después de mover la colección de sitios y para garantizar que los cambios surtan efecto en todos los servidores cliente web en la granja de servidores, ejecute el siguiente comando desde un símbolo del sistema:
iisreset /noforce
Vea también
Otros recursos
La operación mergecontentdbs puede provocar daños en la base de datos