Função JetBackup
Aplica-se a: Windows | Windows Server
Função JetBackup
A função JetBackup cria um backup do banco de dados enquanto o banco de dados está online. Essa função é principalmente para compatibilidade com versões anteriores com o Windows 2000 e mecanismos de banco de dados anteriores, em que apenas uma instância de um banco de dados é permitida. Nesse caso, a instância ativa é a instância com backup.
JET_ERR JET_API JetBackup(
__in JET_PCSTR szBackupPath,
__in JET_GRBIT grbit,
__in JET_PFNSTATUS pfnStatus
);
Parâmetros
szBackupPath
O diretório em que o backup é armazenado. Se o caminho de backup for NULL, a função truncará os logs, se possível.
grbit
Um grupo de bits que especifica zero ou mais das opções a seguir.
Valor |
Significado |
---|---|
JET_bitBackupAtomic |
Cria um backup completo do banco de dados. Isso permite a preservação de um backup existente no mesmo diretório se o novo backup falhar. |
JET_bitBackupIncremental |
Cria um backup incremental em vez de um backup completo. Isso significa que somente os arquivos de log desde o último backup completo ou incremental serão copiados em backup. |
pfnStatus
Ponteiro para a função de retorno de chamada JET_PFNSTATUS , que fornece informações de notificação sobre o progresso da operação de backup.
Valor Retornado
A função retorna um dos códigos de erro JET_ERR . A seguir estão os retornados com mais frequência. (Para obter uma lista completa de erros para essa API, consulte Códigos de erro extensíveis do mecanismo de armazenamento.)
Código de retorno |
Descrição |
---|---|
JET_errSuccess |
A operação foi concluída com sucesso. |
JET_errBackupInProgress |
Um backup já está em andamento para a mesma instância. Vários backups não são permitidos ao mesmo tempo. |
JET_errBackupNotAllowedYet |
A instância ainda não está pronta para backup, pois está inicializando. |
JET_errClientRequestToStopJetService |
A operação não pode ser concluída porque todas as atividades na instância associada à sessão cessaram como resultado de uma chamada para JetStopService. |
JET_errInstanceUnavailable |
A operação não pode ser concluída porque a instância associada à sessão encontrou um erro fatal que exige que o acesso a todos os dados seja revogado para proteger a integridade desses dados. Windows XP: Esse valor retornado é introduzido no Windows XP. |
JET_errInvalidBackup |
Um backup incremental não será permitido se o log circular estiver ativado. |
JET_errInvalidGrbit |
As opções especificadas são inválidas. |
JET_errInvalidParameter |
Um parâmetro inválido foi passado para a API. |
JET_errInvalidPath |
O caminho de destino não existe. |
JET_errLoggingDisabled |
A instância está em execução sem registro em log. Nenhum backup é permitido. |
JET_errLogReadVerifyFailure |
Houve um erro de verificação de soma de verificação em um arquivo de log. |
JET_errLogWriteFail |
O registro em log da instância é temporário ou permanentemente desabilitado devido a um erro inesperado. |
JET_errNotInitialized |
A operação não pode ser concluída porque a instância associada à sessão ainda não foi inicializada. |
JET_errReadVerifyFailure |
Houve um erro de verificação de soma de verificação em uma página de banco de dados. |
JET_errRestoreInProgress |
A operação não pode ser concluída porque uma operação de restauração está em andamento na instância associada à sessão. |
JET_errSessionSharingViolation |
A mesma sessão não pode ser usada para mais de um thread ao mesmo tempo. Windows XP: Esse valor retornado é introduzido no Windows XP. |
JET_errTermInProgress |
A operação não pode ser concluída porque a instância associada à sessão está sendo desligada. |
Se a função for bem-sucedida, todos os arquivos necessários para uma restauração até o momento do backup serão contidos no diretório de backup. Se esse for um backup completo, os arquivos serão os arquivos de banco de dados e os arquivos de log necessários para levar o banco de dados a um estado consistente. Se esse for um backup incremental, somente os arquivos de log serão adicionados aos diretórios, mas os arquivos já existentes (bancos de dados e arquivos de log), juntamente com os novos arquivos de log, poderão ser restaurados para trazer o banco de dados de volta ao estado em que estava no momento em que o backup começou.
Como efeito colateral do backup, os arquivos de log que não são mais necessários serão truncados.
Ao mesmo tempo, os cabeçalhos de banco de dados serão atualizados com as informações quando o último backup ocorreu.
Se a função falhar, não haverá nenhum arquivo no destino do diretório de backup para que nenhuma restauração seja possível. Ao mesmo tempo, os arquivos de log atuais não serão truncados.
Comentários
As diferentes etapas do backup terão entradas do Log de Eventos geradas, incluindo os nomes de arquivo, o truncamento de log e o resultado final do backup.
Backups incrementais só são possíveis depois que um backup completo foi feito. Além disso, backups incrementais só serão possíveis se o log circular estiver desativado. É recomendável que o diretório de backup não contenha nenhum arquivo diferente daquele usado no backup ou adicionado por um backup anteriormente bem-sucedido.
O diretório de backup deve existir, a menos que o parâmetro JET_paramCreatePathIfNotExist esteja definido para a instância. Para obter informações, consulte Parâmetros do sistema.
O backup fará uma verificação de soma de verificação em todas as páginas de banco de dados usadas e a partir do Windows Server 2003, também nos arquivos de log. Isso dá a oportunidade de estimar a integridade do banco de dados, mesmo para páginas que não são lidas durante operações normais. Se essa corrupção for encontrada, o backup falhará.
Durante o backup, o arquivo de log atual será concluído e um novo log será gerado. Dessa forma, todos os arquivos de log necessários podem ser cópias, pois o log atual não estará mais em uso.
É altamente recomendável que o backup não seja usado para nenhuma finalidade diferente do backup e restauração no nível do mecanismo. Isso minimizará a chance de receber erros durante as operações de backup e restauração.
Requisitos
Requisito | Valor |
---|---|
Cliente |
Requer Windows Vista, Windows XP ou Windows 2000 Professional. |
Servidor |
Requer o Windows Server 2008, o Windows Server 2003 ou o Windows 2000 Server. |
Cabeçalho |
Declarado em Esent.h. |
Biblioteca |
Use ESENT.lib. |
DLL |
Requer ESENT.dll. |
Unicode |
Implementado como JetBackupW (Unicode) e JetBackupA (ANSI). |
Consulte Também
Arquivos extensíveis do mecanismo de armazenamento
JET_ERR
JET_GRBIT
JET_INSTANCE
JET_PFNSTATUS
JetRestore
JetRestore2
JetRestoreInstance
JetStopService
Parâmetros do sistema