Executando arquivo de backup do SQL Server 2000 no SQL Server 2008

Executando arquivo de backup do SQL Server 2000 no SQL Server 2008

Eu restaurei o arquivo .bak do sql server 2000 para o sql server 2008 por

--RESTORE FILELISTONLY
--FROM DISK = 'D:\DBHarshal\full backup august 6.BAK'
--ALTER DATABASE EPICSms
--SET SINGLE_USER WITH
--ROLLBACK IMMEDIATE

RESTORE DATABASE EPICSms
FROM DISK = 'D:\DBHarshal\full backup august 6.BAK'
WITH MOVE 'EPICSms_Data' TO 'C:\EPICSms_Data.mdf',
MOVE 'EPICSms_Log' TO 'C:\EPICSms_Log.mdf'


 ,REPLACE

Ele pediu para usar o banco de dados mestre quando o usei, consegui carregar meu backup, mas agora o problema é que consigo ver apenas tabelas com dados, mas não procedimento armazenado

Responder1

Exporte e importe os procedimentos armazenados. Lembro-me de ter tido os mesmos problemas antes, mas parece ter sido corrigido pelos servidores SQL mais recentes.

Para facilitar o trabalho, eu conectaria o gerenciamento 2k8 ao sql 2000.

Responder2

Se você ainda não conseguir restaurar um backup do banco de dados SQL Server 2000 para o SQL Server 2008 E conseguir se conectar ao banco de dados SQL Server 2000, recomendo usar o "Assistente para gerar scripts do SQL Server" disponível no SQL Server 2008.

Para sua situação, você pode usar esta ferramenta da seguinte maneira: (1) criar script de todos os objetos (tabelas, procs, logins, permissões, etc. - você tem o controle para ser seletivo) e EXECUTAR imediatamente. (2) criar script dos dados (ETL) como um pacote SSIS.

Próximas etapas: (3) Abra o pacote SSIS de dados (4) Adicione tarefas de execução SQL para concluir ANTES do ETL que define todas as restrições de chave estrangeira como "WITH NOCHECK" (5) Adicione tarefas de execução SQL para concluir DEPOIS o ETL que define todas as restrições de chave estrangeira como "WITH CHECK CHECK"

No banco de dados SQL Server 2008 criado na etapa (1), o código para gerar o TSQL para as etapas (4) e (5) é:

SELECT 
    'ALTER TABLE [' + SCHEMA_NAME(schema_id) + '].[' + OBJECT_NAME(parent_object_id) + ']' + ' NOCHECK CONSTRAINT ' + OBJECT_NAME(OBJECT_ID) AS ddlNoCheck
    ,'ALTER TABLE [' + SCHEMA_NAME(schema_id) + '].[' + OBJECT_NAME(parent_object_id) + ']' + ' WITH CHECK CHECK CONSTRAINT ' + OBJECT_NAME(OBJECT_ID) AS ddlWithCheckCheck
FROM
    sys.objects
WHERE
    type_desc = 'FOREIGN_KEY_CONSTRAINT'
ORDER BY
    SCHEMA_NAME(schema_id)
    , OBJECT_NAME(parent_object_id)
    , type_desc, OBJECT_NAME(OBJECT_ID)

informação relacionada