Configurei um pipeline que traz logs transacionais a cada hora de um site FTP, e esse banco de dados recém-criado fica em modo de espera o tempo todo porque preciso ler dados durante o horário de expediente.
Inicialmente, eu estava pensando em deixar o modo de restauração no NoRecovery porque aprendi que o modo Standby leva mais tempo e por motivos de desempenho. Mas então, percebi que não posso ler dados durante o horário de expediente, então decidi configurar a atualização do log de transações por hora no modo de espera o tempo todo.
Então, eu vou ter um banco de dados que estou tentando isolá-lo para apenas puxar logs transacionais de hora em hora, e então eu gostaria de ter uma cópia desse banco de dados para que ele não interrompa nenhum processo (de registro de hora em hora) enquanto estou lendo dados para fins de relatório.
Estou tentando ver se há uma maneira de replicar esse banco de dados (que está em modo de espera) para que pelo menos eu tenha um banco de dados de backup e possa extrair dados de lá para fins de relatório.
Ou seria melhor se o banco de dados que atualiza os arquivos de log diariamente do site FTP fosse o modo NoRecovery e houvesse uma maneira de replicar esse banco de dados de alguma forma? Estou apenas pensando em uma opção melhor para configurar uma arquitetura de banco de dados estável.
BTW, esse SQL Server específico está em uma VM do Azure e estou tentando trazer apenas os dados necessários para o Azure SQL Server (Portal) eventualmente.
Por algum motivo você não pode simplesmente usar os recursos nativos de replicação do SQL Server, como a replicação transacional ?
Você pode sincronizar em tempo real entre seus dois servidores e, em seguida, relatar o servidor do Assinante não afetará o desempenho do servidor do Publicador.
Você também pode pesquisar a Replicação de Instantâneos se quiser algo menos em tempo real e mais programado de forma recorrente.
Você sempre pode restaurar dois bancos de dados separados dos backups de log, um em NoRecovery e outro em Standby.