Estou movendo bancos de dados de uma instância para outra (desanexando bancos de dados da primeira instância, movendo MDF
e registrando arquivos para outro local e anexando-os à nova instância), infelizmente não consegui anexar alguns deles e perdi o cálculo do número de bancos de dados que tiver problemas, como verificar todos os MDF
arquivos que não estão anexados ao servidor SQL de um diretório específico.
relate perguntas
-
SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado
-
Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?
-
Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Como determinar se um Índice é necessário ou necessário
Você deve usar o powershell para automação e restauração de backup para uma maneira garantida de migrar seus bancos de dados.
Para powershell, use dbatools -->
COPY-SQLDATABASE
ou para migrar todo o servidor com logins, trabalhos etc.Start-SqlMigration
Por que não restaurar o backup? desanexar e anexar arquivos de banco de dados para mover de um servidor para outro não é uma abordagem recomendada !
Você pode usar
Find-DbaOrphanedFile
para descobrir arquivos de banco de dados órfãos.mdf, .ldf and .ndf files
.Encontrei a resposta para minha pergunta, o script a seguir listará todo o MDF e o LDF não está anexado à instância em todo o servidor (Nota: NÃO reivindico a propriedade deste script, tive que fazer pequenas modificações, pois é um script muito antigo)
Agora vamos obter o resultado usando o comando select
Finalmente, depois que meu trabalho estiver concluído, preciso remover as tabelas temporárias
Aqui está uma solução que não requer xp_cmdshell.
Não temos permissão para habilitar o xp_cmdshell por motivos de segurança. Este script verifica cada diretório onde o SQL possui arquivos de banco de dados e verifica se há órfãos nesses diretórios.
Se você quiser ver todos os detalhes (.mdf) em um diretório específico, então você deve habilitar o 'xp_cmdshell'.
Suponha que você queira ver todos os arquivos (.mdf) , que estão em 'D:\' e então execute esta consulta.
Ele fornecerá todos os arquivos (.mdf) anexados em sua instância específica do SQL Server.