Restaurar, sincronizar y realizar copias de seguridad de bases de datos (XMLA)
En XML for Analysis, hay tres comandos que sirven para restaurar, sincronizar y realizar copias de seguridad de las bases de datos:
El comando Backup hace una copia de seguridad de una base Microsoft SQL Server Analysis Services datos mediante un archivo de copia de seguridad de Analysis Services (.abf), como se describe en la sección Copia de seguridad de bases de datos.
El comando Restaurar restaura una base de Analysis Services a partir de un archivo .abf, como se describe en la sección Restauración de bases de datos.
El comando Synchronize sincroniza una base Analysis Services datos con los datos y metadatos de otra base de datos, como se describe en la sección Sincronización de bases de datos.
Realizar copias de seguridad de bases de datos
Como se mencionó anteriormente, el comando Backup hace una copia de seguridad de una base de Analysis Services de datos especificada en un archivo de copia de seguridad. El comando Backup tiene varias propiedades que permiten especificar la base de datos de la que se va a realizar una copia de seguridad, el archivo de copia de seguridad que se va a usar, cómo realizar una copia de seguridad de las definiciones de seguridad y las particiones remotas de las que se va a realizar una copia de seguridad.
Importante
La cuenta de servicio de Analysis Services debe tener permiso para escribir en la ubicación de copia de seguridad especificada para cada archivo. Además, el usuario debe tener uno de los siguientes roles: rol de administrador en la instancia de Analysis Services o miembro de un rol de base de datos con permisos de control total (administrador) en la base de datos de la que se va a realizar una copia de seguridad.
Especificar la base de datos y el archivo de copia de seguridad
Para especificar la base de datos de la que se va a realizar una copia de seguridad, establezca la propiedad Object del comando Backup . La propiedad Object debe contener un identificador de objeto para una base de datos o se produce un error.
Para especificar el archivo que va a crear y usar el proceso de copia de seguridad, establezca la propiedad Archivo del comando Backup . La propiedad File debe establecerse en una ruta de acceso UNC y un nombre de archivo para el archivo de copia de seguridad que se va a crear.
Además de especificar qué archivo se va a utilizar para la copia de seguridad, puede establecer las siguientes opciones para el archivo de copia de seguridad especificado:
Si establece la propiedad AllowOverwrite en true, el comando Backup sobrescribe el archivo de copia de seguridad si el archivo especificado ya existe. Si establece la propiedad AllowOverwrite en false, se produce un error si el archivo de copia de seguridad especificado ya existe.
Si establece la propiedad ApplyCompression en true, el archivo de copia de seguridad se comprime después de crear el archivo.
Si establece la propiedad Password en cualquier valor que no esté en blanco, el archivo de copia de seguridad se cifra con la contraseña especificada.
Importante
Si no se especifican las propiedades ApplyCompression y Password , el archivo de copia de seguridad almacena los nombres de usuario y contraseñas contenidos en las cadenas de conexión en texto no definido. Los datos almacenados en texto no cifrado se pueden recuperar. Para aumentar la seguridad, use la configuración ApplyCompression y Password para comprimir y cifrar el archivo de copia de seguridad.
Realizar copias de seguridad de la configuración de seguridad
La propiedad Security determina si el comando Backup hace una copia de seguridad de las definiciones de seguridad, como roles y permisos, definidas en una base de Analysis Services datos. La propiedad Security también determina si el archivo de copia de seguridad incluye Windows cuentas de usuario y grupos definidos como miembros de las definiciones de seguridad.
El valor de la propiedad Security se limita a una de las cadenas enumeradas en la tabla siguiente.
| Valor | Descripción |
|---|---|
| SkipMembership | Incluye las definiciones de seguridad en el archivo de copia de seguridad, pero excluye la información de pertenencia. |
| CopyAll | Incluye las definiciones de seguridad y la información de pertenencia en el archivo de copia de seguridad. |
| IgnoreSecurity | Excluye las definiciones de seguridad del archivo de copia de seguridad. |
Realizar copias de seguridad de particiones remotas
Para realizar una copia de seguridad de particiones remotas en la base Analysis Services datos, establezca la propiedad BackupRemotePartitions del comando Backup en true. Esta configuración hace que el comando Backup cree un archivo de copia de seguridad remoto para cada origen de datos remoto que se usa para almacenar particiones remotas para la base de datos.
Para cada origen de datos remoto del que se va a realizar una copia de seguridad, puede especificar su archivo de copia de seguridad correspondiente incluyendo un elemento Location en la propiedad Locations del comando Backup . El elemento Location debe tener su propiedad File establecida en la ruta de acceso UNC y el nombre de archivo del archivo de copia de seguridad remota, y su propiedad DataSourceID establecida en el identificador del origen de datos remoto definido en la base de datos.
Restaurar bases de datos
El comando Restaurar restaura una base de datos Analysis Services a partir de un archivo de copia de seguridad. El comando Restaurar tiene varias propiedades que permiten especificar la base de datos que se va a restaurar, el archivo de copia de seguridad que se va a usar, cómo restaurar las definiciones de seguridad, las particiones remotas que se almacenarán y los objetos OLAP relacionales de reubicación (ROLAP).
Importante
Para cada archivo de copia de seguridad, el usuario que ejecuta el comando de restauración debe tener permiso para leer desde la ubicación de la copia de seguridad especificada. Para restaurar una Analysis Services de datos que no está instalada en el servidor, el usuario también debe ser miembro del rol de servidor para esa Analysis Services servidor. Para sobrescribir una base de datos Analysis Services, el usuario debe tener uno de los siguientes roles: un miembro del rol de servidor para la instancia de Analysis Services o un miembro de un rol de base de datos con permisos de control total (administrador) en la base de datos que se va a restaurar.
Nota
Después de restaurar una base de datos existente, el usuario que restauró la base de datos podría perder el acceso a la base de datos restaurada. Esta pérdida de acceso puede producirse si, en el momento en que se realizó la copia de seguridad, el usuario no era miembro del rol de servidor o no era miembro de rol de base de datos con permisos de Control total (Administrador).
Especificar la base de datos y el archivo de copia de seguridad
La propiedad DatabaseName del comando Restore debe contener un identificador de objeto para una base de datos o se produce un error. Si la base de datos especificada ya existe, la propiedad AllowOverwrite determina si la base de datos existente se sobrescribe. Si la propiedad AllowOverwrite está establecida en false y la base de datos especificada ya existe, se produce un error.
Debe establecer la propiedad File del comando Restore en una ruta de acceso UNC y un nombre de archivo para que el archivo de copia de seguridad se restaure en la base de datos especificada. También puede establecer la propiedad Password para el archivo de copia de seguridad especificado. Si la propiedad Password se establece en cualquier valor que no esté en blanco, el archivo de copia de seguridad se descifra con la contraseña especificada. Si el archivo de copia de seguridad no está cifrado o la contraseña especificada no coincide con la utilizada para cifrar dicho archivo, se produce un error.
Restaurar la configuración de seguridad
La propiedad Security determina si el comando Restore restaura las definiciones de seguridad, como roles y permisos, definidas en una base de Analysis Services datos. La propiedad Security también determina si el comando Restore incluye las cuentas de usuario y los grupos de Windows definidos como miembros de las definiciones de seguridad como parte del proceso de restauración.
El valor de este elemento se limita a una de las cadenas enumeradas en la tabla siguiente.
| Valor | Descripción |
|---|---|
| SkipMembership | Incluye las definiciones de seguridad en la base de datos, pero excluye la información de suscripción. |
| CopyAll | Incluye las definiciones de seguridad y la información de pertenencia en la base de datos. |
| IgnoreSecurity | Excluye las definiciones de seguridad de la base de datos. |
Restaurar particiones remotas
Para cada archivo de copia de seguridad remoto creado durante un comando de copia de seguridad anterior, puede restaurar su partición remota asociada incluyendo un elemento Location en la propiedad Locations del comando Restore . La propiedad DataSourceType de cada elemento Location debe excluirse o establecerse explícitamente en Remote.
Para cada elemento Location especificado, la instancia de Analysis Services se pone en contacto con el origen de datos remoto especificado en la propiedad DataSourceID para restaurar las particiones definidas en el archivo de copia de seguridad remoto especificado en la propiedad File . Además de las propiedades DataSourceID y File , están disponibles las siguientes propiedades para cada elemento Location que se usa para restaurar una partición remota:
Para invalidar la cadena de conexión del origen de datos remoto especificado en DataSourceID, puede establecer la propiedad ConnectionString del elemento Location en una cadena de conexión diferente. A continuación , el comando Restore usará la cadena de conexión que se encuentra en la propiedad ConnectionString . Si no se especifica ConnectionString , el comando Restore usa la cadena de conexión almacenada en el archivo de copia de seguridad para el origen de datos remoto especificado. Puede usar la configuración ConnectionString para mover una partición remota a otra instancia remota. Sin embargo, no puede usar el valor ConnectionString para restaurar una partición remota en la misma instancia que contiene la base de datos restaurada. En otras palabras, no puede usar la propiedad ConnectionString para convertir una partición remota en una partición local.
Para cada carpeta original usada para almacenar las particiones remotas en el origen de datos remoto, puede especificar un elemento Folder para indicar la nueva carpeta en la que se restaurarán todas las particiones remotas almacenadas en la carpeta original. Si no se especifica un elemento Folder, el comando Restore usa las carpetas originales especificadas para las particiones remotas contenidas en el archivo de copia de seguridad remota.
Reubicar objetos ROLAP
El comando Restore no puede restaurar agregaciones ni datos para objetos que usan el almacenamiento ROLAP porque dicha información se almacena en tablas en un origen de datos relacional subyacente. Sin embargo, pueden restaurarse los metadatos de los objetos ROLAP. Para restaurar los metadatos del objeto ROLAP, el comando Restore vuelve a crear la estructura de tabla en un origen de datos relacional.
Puede usar el elemento Location de un comando Restore para reubicar objetos ROLAP. Para cada elemento Location usado para reubicar un origen de datos, la propiedad DataSourceType debe establecerse explícitamente en Local. También tiene que establecer la propiedad ConnectionString del elemento Location en la cadena de conexión de la nueva ubicación. Durante la restauración, el comando Restore reemplazará la cadena de conexión del origen de datos identificado por la propiedad DataSourceID del elemento Location por el valor de la propiedad ConnectionString del elemento Location .
Sincronizar bases de datos
El comando Synchronize sincroniza los datos y metadatos de una base de Analysis Services especificada con otra base de datos. El comando Synchronize tiene varias propiedades que permiten especificar la base de datos de origen, cómo sincronizar definiciones de seguridad, las particiones remotas que se sincronizarán y la sincronización de objetos ROLAP.
Nota
Los administradores de servidor y los administradores de bases de datos solo pueden ejecutar el comando Synchronize. Las bases de datos de origen y de destino deben tener el mismo nivel de compatibilidad de base de datos.
Especificar la base de datos de origen
La propiedad Source del comando Synchronize contiene dos propiedades, ConnectionString y Object. La propiedad ConnectionString contiene la cadena de conexión de la instancia de que contiene la base de datos de origen, y la propiedad Object contiene el identificador de objeto de la base de datos de origen.
La base de datos de destino es la base de datos actual para la sesión en la que se ejecuta el comando Synchronize.
Si la propiedad ApplyCompression del comando Synchronize se establece en true, la información enviada desde la base de datos de origen a la base de datos de destino se comprime antes de enviarse.
Sincronizar la configuración de seguridad
La propiedad SynchronizeSecurity determina si el comando Synchronize sincroniza las definiciones de seguridad, como roles y permisos, definidas en la base de datos de origen. La propiedad SynchronizeSecurity también determina si el comando Sychronize incluye las cuentas de usuario y los grupos de Windows definidos como miembros de las definiciones de seguridad.
El valor de este elemento se limita a una de las cadenas enumeradas en la tabla siguiente.
| Valor | Descripción |
|---|---|
| SkipMembership | Incluye las definiciones de seguridad en la base de datos de destino, pero excluye la información de suscripción. |
| CopyAll | Incluye las definiciones de seguridad y la información de pertenencia en la base de datos de destino. |
| IgnoreSecurity | Excluye las definiciones de seguridad de la base de datos de destino. |
Sincronizar particiones remotas
Para cada origen de datos remoto que exista en la base de datos de origen, puede sincronizar cada partición remota asociada incluyendo un elemento Location en la propiedad Locations del comando Synchronize . Para cada elemento Location , la propiedad DataSourceType debe excluirse o establecerse explícitamente en Remote.
Para definir y conectarse a un origen de datos remoto en la base de datos de destino, el comando Synchronize usa la cadena de conexión definida en la propiedad ConnectionString del elemento Location . A continuación , el comando Synchronize usa la propiedad DataSourceID del elemento Location para identificar qué particiones remotas se deben sincronizar. El comando Synchronize sincroniza las particiones remotas en el origen de datos remoto especificado en la propiedad DataSourceID de la base de datos de origen con el origen de datos remoto especificado en la propiedad DataSourceID de la base de datos de destino.
Para cada carpeta original usada para almacenar las particiones remotas en el origen de datos remoto en la base de datos de origen, también puede especificar un elemento Folder en el elemento Location . El elemento Folder indica la nueva carpeta de la base de datos de destino en la que se sincronizarán todas las particiones remotas almacenadas en la carpeta original en el origen de datos remoto. Si no se especifica un elemento Folder, el comando Synchronize usa las carpetas originales especificadas para las particiones remotas contenidas en la base de datos de origen.
Sincronizar objetos ROLAP
El comando Synchronize no puede sincronizar agregaciones ni datos para los objetos que usan el almacenamiento ROLAP porque dicha información se almacena en tablas en un origen de datos relacional subyacente. Sin embargo, pueden sincronizarse los metadatos de los objetos ROLAP. Para sincronizar los metadatos, el comando Synchronize vuelve a crear la estructura de tabla en un origen de datos relacional.
Puede usar el elemento Location de un comando Synchronize para sincronizar objetos ROLAP. Para cada elemento Location utilizado para reubicar un origen de datos, la propiedad DataSourceType debe establecerse explícitamente en Local. . También tiene que establecer la propiedad ConnectionString del elemento Location en la cadena de conexión de la nueva ubicación. Durante la sincronización, el comando Synchronize reemplazará la cadena de conexión del origen de datos identificado por la propiedad DataSourceID del elemento Location por el valor de la propiedad ConnectionString del elemento Location .
Consulte también
Elemento Backup (XMLA)
Elemento Restore (XMLA)
Elemento Synchronize (XMLA)
Realizar una copia de seguridad y restaurar las bases de datos de Analysis Services