A TI percebeu que havia um erro de gravação de disco em nossa produção do SQL Server 2005 e, portanto, estava causando falha nos backups. Quando perceberam que o backup noturno era antigo, não puderam restaurar o backup em outro servidor.
O banco de dados ainda está em execução e sendo usado constantemente. No entanto, o DBCC CheckDB falha. Além disso, a tarefa de backup do SQL Server falha, o banco de dados de cópia falha, o Assistente de exportação de dados falha. No entanto, parece que todos os dados podem ser lidos nas tabelas (por exemplo, usando bcp etc)
Outra observação que fiz é que o log de transações é quase o dobro do tamanho do banco de dados. (Isso significa que todas as alterações não estão sendo gravadas no MDF?)
Qual seria o melhor plano de ataque para colocar o banco de dados em um estado em que os backups estão funcionando e os dados estão seguros?
- Coloque o banco de dados offline e use o MDF / LDF para criar de alguma forma o banco de dados em outro servidor sql?
- Exporte os dados do banco de dados usando bcp. Crie o banco de dados (use a função Gerar Scripts no banco de dados corrompido para criar o esquema no novo banco de dados) em outro servidor sql e use bcp novamente para importar os dados.
- Alguma outra opção que é o curso correto de ação nessa situação?
O gerente de TI diz que os dados estão seguros como se o servidor falhasse, os dados podem ser restaurados a partir do mdf / ldf. Eu não tenho certeza, então insistimos que começássemos a exportar os dados todas as noites como um teste de segurança (usando o bcp, por exemplo).
A TI também está tendo problemas no lado do hardware, como supostamente o erro de disco em um disco virtualizado e não pode ser reconstruído como um array de ataque normal (ou algo parecido).
Por favor, desculpe o uso de terminologia incorreta e suposições incorretas sobre como o Sql Server opera. Eu sou o desenvolvedor do aplicativo e fui chamado para ajudar (como parece, ele sabe menos sobre o SQL Server do que eu).
Muito obrigado,
Amit
Resultados do DBBC CheckDB:
Msg 1823, Level 16, State 2, Line 1
A database snapshot cannot be created because it failed to start.
Msg 7928, Level 16, State 1, Line 1
The database snapshot for online checks could not be created. Either the reason is given in a previous error or one of the underlying volumes does not support sparse files or alternate streams. Attempting to get exclusive access to run checks offline.
Msg 5030, Level 16, State 12, Line 1
The database could not be exclusively locked to perform the operation.
Msg 7926, Level 16, State 1, Line 1
Check statement aborted. The database could not be checked as a database snapshot could not be created and the database or table could not be locked. See Books Online for details of when this behavior is expected and what workarounds exist. Also see previous errors for more details.
Msg 823, Level 24, State 3, Line 1
The operating system returned error 1(error not found) to SQL Server during a write at offset 0x00000674706000 in file 'G:\AX40_Dynamics_Live.mdf'. Additional messages in the SQL Server error log and system event log may provide more detail. This is a severe system-level error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.