Compartilhar via


Fazendo backup, restaurando e sincronizando bancos de dados (XMLA)

No XML for Analysis, existem três comandos que fazem backup de bancos de dados, que os restauram e que os sincronizam:

  • O comando Backup faz backup de um banco de dados do Microsoft SQL Server Analysis Services usando um arquivo de backup (.abf) do Analysis Services, como descrito na seção Fazendo backup de bancos de dados.

  • O comando Restore restaura um banco de dados a partir de um arquivo .abf do Analysis Services, como descrito na seção Restaurando bancos de dados.

  • O comando Synchronize sincroniza um banco de dados do Analysis Services com os dados e metadados de outro banco de dados, como descrito na seção Sincronizando bancos de dados.

Fazendo backup de bancos de dados

Como mencionado anteriormente, o comando Backup faz backup de um banco de dados do Analysis Services especificado em um arquivo de backup. O comando Backup possui diversas propriedades que permitem a você especificar o banco de dados a ser incluído no backup, o arquivo de backup a ser usado, como fazer backup de definições de segurança e as partições remotas a serem incluídas no backup.

Observação sobre segurançaObservação sobre segurança

Para cada arquivo de backup, o usuário que executar o comando de backup deve ter permissão para gravar no local de backup especificado para cada arquivo. Além disso, o usuário deve ter uma das seguintes funções: membro de uma função de servidor da instância do Analysis Services ou membro de uma função de banco de dados com permissões de Controle Total (Administrador) no banco de dados cujo backup será feito.

Especificando o banco de dados e o arquivo de backup

Para especificar o banco de dados a ser incluído no backup, defina a propriedade Object do comando Backup. A propriedade Object deve conter um identificador de objeto para um banco de dados ou ocorrerá um erro.

Para especificar o arquivo a ser criado e usado pelo processo de backup, defina a propriedade File do comando Backup. A propriedade File dever ser definida como um caminho UNC e um nome de arquivo para o arquivo de backup a ser criado.

Além da especificação de que arquivo será usado para backup, defina as opções a seguir para o arquivo de backup especificado:

  • Se você definir a propriedade AllowOverwrite como verdadeira, o comando Backup substituirá o arquivo de backup se o arquivo especificado já existir. Se você definir a propriedade AllowOverwrite como falsa, ocorrerá um erro se o arquivo de backup especificado já existir.

  • Se você definir a propriedade ApplyCompression como verdadeira, o arquivo de backup será compactado após a criação do arquivo.

  • Se você definir a propriedade Password como qualquer valor diferente de em branco, o arquivo de backup será criptografado com a senha especificada.

    Observação sobre segurançaObservação sobre segurança

    Se as propriedades ApplyCompression e Password não forem especificadas, o arquivo de backup armazenará nomes de usuário e senhas contidos nas cadeias de conexão em texto não criptografado. Os dados armazenados em texto não criptografados podem ser recuperados. Para aumentar a segurança, use as configurações ApplyCompression e Password para compactar e criptografar o arquivo de backup.

Fazendo backup das configurações de segurança

A propriedade Security determina se o comando Backup fará o backup das definições de segurança, como funções e permissões, de um banco de dados do Analysis Services. A propriedade Security também determina se o arquivo de backup incluirá as contas de usuário do Windows e os grupos definidos como membros das definições de segurança.

O valor da propriedade Security está limitado a uma das cadeias de caracteres listadas na tabela a seguir.

Valor

Descrição

SkipMembership

Inclua definições de segurança, mas exclua informações de associação, no arquivo de backup.

CopyAll

Inclua definições de segurança e informações de associação no arquivo de backup.

IgnoreSecurity

Exclua definições de segurança do arquivo de backup.

Fazendo backup de partições remotas

Para fazer backup de partições remotas no banco de dados do Analysis Services, defina a propriedade BackupRemotePartitions do comando Backup como verdadeira. Essa configuração faz com que o comando Backup crie um arquivo de backup remoto para cada fonte de dados remota usada para o armazenamento de partições remotas para o banco de dados.

Para cada fonte de dados remota a ser incluída no backup, você pode especificar seu arquivo de backup correspondente ao incluir um elemento Location na propriedadeLocations do comando Backup. O elemento Location deve ter sua propriedade File definida como o caminho UNC e o nome de arquivo do arquivo de backup remoto e sua propriedade DataSourceID definida como o identificador da fonte de dados remota definida no banco de dados.

Restaurando bancos de dados

O comando Restore restaura um banco de dados do Analysis Services especificado de um arquivo de backup. O comando Restore possui diversas propriedades que permitem a você especificar o banco de dados a ser restaurado, o arquivo de backup a ser usado, como restaurar definições de segurança, as partições remotas a serem armazenadas e os objetos ROLAP.

Observação sobre segurançaObservação sobre segurança

Para cada arquivo de backup, o usuário que executar o comando de restauração deverá ter permissão para ler no local de backup especificado de cada arquivo. Para restaurar um banco de dados do Analysis Services que não esteja instalado no servidor, o usuário também deve ser membro da função de servidor dessa instância do Analysis Services. Para substituir um banco de dados do Analysis Services, o usuário deve ter uma das seguintes funções: membro da função de servidor da instância do Analysis Services ou membro de uma função de banco de dados com permissões de Controle total (Administrador) no banco de dados a ser restaurado.

ObservaçãoObservação

Após restaurar um banco de dados existente, o usuário que o restaurou poderá perder o acesso ao banco de dados restaurado. Essa perda de acesso pode ocorrer se, na hora em que o backup foi executado, o usuário não era um membro da função de servidor ou não era um membro da função de banco de dados com permissões de controle total (Administrador).

Especificando o banco de dados e o arquivo de backup

A propriedade DatabaseName do comando Restore deve conter um identificador de objeto para um banco de dados, ou ocorrerá um erro. Se o banco de dados especificado já existir, a propriedade AllowOverwrite determinará se o banco de dados existente será substituído. Se a propriedade AllowOverwrite for definida para como falsa e se o banco de dados especificado já existir, ocorrerá um erro.

Defina a propriedade File do comando Restore como um caminho UNC e o nome de arquivo para o arquivo de backup a ser restaurado para o banco de dados especificado. Você também pode definir a propriedade Password para o arquivo de backup especificado. Se a propriedade Password for definida como um valor diferente de em branco, o arquivo de backup será criptografado com a senha especificada. Se o arquivo de backup não estiver criptografado, ou se a senha especificada não corresponder à senha usada para criptografar o arquivo de backup, ocorrerá um erro.

Restaurando configurações de segurança

A propriedade Security determina se o comando Restore vai restaurar as definições de segurança, como funções e permissões, do banco de dados Analysis Services. A propriedade Security também determina se o comando Restore incluirá as contas de usuário e os grupos do Windows definidos como membros das definições de segurança como parte do processo de restauração.

O valor desse elemento é limitado a uma das cadeias de caracteres listadas na tabela a seguir.

Valor

Descrição

SkipMembership

Inclua definições de segurança, mas exclua informações de associação, no banco de dados.

CopyAll

Inclua definições de segurança e informações de associação no banco de dados.

IgnoreSecurity

Exclua definições de segurança do banco de dados.

Restaurando partições remotas

Para cada arquivo de backup remoto criado durante o comando Backup anterior, você poderá restaurar sua partição remota associada incluindo um elemento Location na propriedade Locations do comando Restore. A propriedade DataSourceType para cada elemento Location deverá ser excluída ou explicitamente definida como Remote.

Para cada elemento Location especificado, a instância do Analysis Services entrará em contato com a fonte de dados remota especificada na propriedade DataSourceID para restaurar as partições definidas no arquivo de backup remoto especificado na propriedade File. Além das propriedades DataSourceID e File, as propriedades a seguir estão disponíveis para cada elemento Location usado na restauração de uma partição remota:

  • Para substituir a cadeia de conexão para uma fonte de dados remota especificada em DataSourceID, defina a propriedade ConnectionString do elemento Location para uma cadeia de conexão diferente. O comando Restore usará a cadeia de conexão contida na propriedade ConnectionString. Se ConnectionString não for especificado, o comando Restore usará a cadeia de conexão armazenada no arquivo de backup para a fonte de dados remota especificada. Você pode usar a configuração ConnectionString para mover uma partição remota para uma instância remota diferente. No entanto, não é possível usar a configuração ConnectionString para restaurar uma partição remota para a mesma instância que contém o banco de dados restaurado. Em outras palavras, você não poderá usar a propriedade ConnectionString para transformar uma partição remota em uma partição local.

  • Para cada pasta original usada para armazenar as partições remotas na fonte de dados remota, é possível especificar um elemento Folder para indicar a nova pasta na qual todas as partições remotas armazenadas na pasta original serão restauradas. Se um elemento Folder não for especificado, o comando Restore usará as pastas originais especificadas para as partições remotas contidas no arquivo de backup remoto.

Realocando objetos ROLAP

O comando Restore não pode restaurar agregações ou dados para objetos que usam o armazenamento ROLAP porque essas informações estão armazenadas em tabelas em uma fonte de dados relacional subjacente. No entanto, os metadados para objetos ROLAP podem ser restaurados. Para restaurar os metadados para objetos ROLAP, o comando Restore recria a estrutura de tabela em uma fonte de dados relacional.

Você pode usar o elemento Location em um comando Restore para realocar objetos ROLAP. Para cada elemento Location usado na realocação de uma fonte de dados, a propriedade DataSourceType deve ser definida explicitamente como Local. Você também precisa definir a propriedade ConnectionString do elemento Location para a cadeia de conexão do novo local. Durante a restauração, o comando Restore substituirá a cadeia de conexão para a fonte de dados identificada pela propriedade DataSourceID do elemento Location pelo valor da propriedade ConnectionString do elemento Location.

Sincronizando bancos de dados

O comando Synchronize sincroniza os dados e os metadados de um banco de dados do Analysis Services especificado com outro banco de dados. O comando Synchronize possui diversas propriedades que permitem a você especificar o banco de dados de origem, como sincronizar as definições de segurança, as partições remotas a serem sincronizadas e a sincronização de objetos ROLAP.

ObservaçãoObservação

O comando Synchronize só pode ser executado por administradores de servidor e por administradores de banco de dados.

Especificando o banco de dados de origem

A propriedade Source do comando Synchronize contém duas propriedades, ConnectionString e Object. A propriedade ConnectionString armazena a cadeia de conexão da instância que contém o banco de dados de origem, e a propriedade Object contém o identificador de objeto para o banco de dados de origem.

O banco de dados de destino é o banco de dados atual para a sessão na qual o comando Synchronize é executado.

Se a propriedade ApplyCompression do comando Synchronize for definida como verdadeira, as informações enviadas do banco de dados de origem para o de destino serão compactadas antes do envio.

Sincronizando configurações de segurança

A propriedade SynchronizeSecurity determina se o comando Synchronize sincronizará as definições de segurança, como funções e permissões, do banco de dados de origem. A propriedade SynchronizeSecurity também determina se o comando Sychronize incluirá contas de usuário e grupos do Windows definidos como membros das definições de segurança.

O valor desse elemento é limitado a uma das cadeias de caracteres listadas na tabela a seguir.

Valor

Descrição

SkipMembership

Inclua definições de segurança, mas exclua informações de associação, no banco de dados de destino.

CopyAll

Inclua definições de segurança e informações de associação no banco de dados de destino.

IgnoreSecurity

Exclua definições de segurança do banco de dados de destino.

Sincronizando partições remotas

Para cada fonte de dados remota existente no banco de dados de origem, você poderá sincronizar cada partição remota associada ao incluir um elemento Location na propriedade Locations do comando Synchronize. Para cada elemento Location, uma propriedade DataSourceType deverá ser excluída ou explicitamente definida como Remote.

Para definir uma fonte de dados remota e para conectar-se a ela no banco de dados de destino, o comando Synchronize usará a cadeia de conexão definida na propriedade ConnectionString do elemento Location. O comando Synchronize usa a propriedade DataSourceID do elemento Location para identificar quais partições remotas serão sincronizadas. O comando Synchronize sincroniza as partições remotas na fonte de dados remota especificada na propriedade DataSourceID do banco de dados de origem com a fonte de dados remota especificada na propriedade DataSourceID do banco de dados de destino.

Para cada pasta original usada para armazenar as partições remotas da fonte de dados remota do banco de dados de origem, também é possível especificar um elemento Folder no elemento Location. O elemento Folder indica a nova pasta para o banco de dados de destino no qual todas as partições remotas armazenadas na pasta original da fonte de dados remota serão sincronizadas. Se um elemento Folder não for especificado, o comando Synchronize usará as pastas originais especificadas para as partições remotas contidas no banco de dados de origem.

Sincronizando objetos ROLAP

O comando Synchronize não pode sincronizar agregações ou dados para objetos que usam o armazenamento ROLAP porque essas informações estão armazenadas em tabelas em uma fonte de dados relacional subjacente. No entanto, os metadados para objetos ROLAP podem ser sincronizados. Para sincronizar os metadados, o comando Synchronize recria a estrutura de tabela em uma fonte de dados relacional.

Você pode usar o elemento Location de um comando Synchronize para sincronizar objetos ROLAP. Para cada elemento Location usado na realocação de uma fonte de dados, a propriedade DataSourceType deve ser definida explicitamente como Local. . Você também precisa definir a propriedade ConnectionString do elemento Location para a cadeia de conexão do novo local. Durante a sincronização, o comando Synchronize substituirá a cadeia de conexão para a fonte de dados identificada pela propriedade DataSourceID do elemento Location pelo valor da propriedade ConnectionString do elemento Location.