Usuário com melhor resposta
Erro ao importar tabelas através do "Sql Server Export and Import Wizard" no SQL SERVER 2005

Pergunta
-
Prezados Senhores,
Estava tentando exportar as linhas de uma tabela de uma determinada base de dados, que está em um servidor, para o outra tabela, de mesmo layout (quantidade e tipos das colunas), de uma outra base de dados, em outro servidor.
Para isso, utilizei a opção do "Sql Server Export and Import Wizard" e, obviamente, essa opção gera intrinsecamente um pacote SSIS.
Porém, no meio do processo ocorreu o erro abaixo :
Messages
* Information 0x4004800d: Data Flow Task: The buffer manager failed a memory allocation call for 10485760 bytes, but was unable to swap out any buffers to relieve memory pressure. 3 buffers were considered and 3 were locked. Either not enough memory is available to the pipeline because not enough are installed, other processes were using it, or too many buffers are locked.
(SQL Server Import and Export Wizard)
* Error 0xc0047012: Data Flow Task: A buffer failed while allocating 10485760 bytes.
(SQL Server Import and Export Wizard)
* Error 0xc0047011: Data Flow Task: The system reports 36 percent memory load. There are 38651478016 bytes of physical memory with 24484986880 bytes free. There are 2147352576 bytes of virtual memory with 60416000 bytes free. The paging file has 77301063680 bytes with 63780655104 bytes free.
(SQL Server Import and Export Wizard)
* Error 0xc02020c4: Data Flow Task: The attempt to add a row to the Data Flow task buffer failed with error code 0x8007000E.
(SQL Server Import and Export Wizard)
* Error 0xc0047038: Data Flow Task: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "Source - ARQUIVO" (1) returned error code 0xC02020C4. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
(SQL Server Import and Export Wizard)
* Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "SourceThread0" has exited with error code 0xC0047038. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
* Error 0xc0047039: Data Flow Task: SSIS Error Code DTS_E_THREADCANCELLED. Thread "WorkThread0" received a shutdown signal and is terminating. The user requested a shutdown, or an error in another thread is causing the pipeline to shutdown. There may be error messages posted before this with more information on why the thread was cancelled.
(SQL Server Import and Export Wizard)
* Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "WorkThread0" has exited with error code 0xC0047039. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)"Não entendi o porque desse erro ! Como podemos perceber a memória do servidor destino, no momento do erro, estava com 36% ocupada somente.
Como informação, esta tabela, objeto da exportação é bem grande, com cerca de 10 GB, nela contendo colunas do tipo IMAGE, que armazena arquivos PDF (não sou adepto desse procedimento, mas sim de guardar o arquivo num "storage", e na tabela manter apenas a referência do caminho do mesmo, mas infelizmente essa base de dados é de uma aplicação externa que foi comprada pela empresa).
Outras informações : eu utilizo "Lock Pages in memory"; o servidor destino (no qual rodava o procedimento) tem 36 GB de memória e o SQL SERVER está utilizando 32 GB (configurado no "max server memory"); o ambiente é todo 64 bits, com o SO sendo o "Windows Server 2008 R2 Enterprise" e o SQL SERVER é o 2005 Enterprise SP4 Cumulative Update 3 (Build 5266)
Qual seria a causa desse erro ? Será porque esta tabela possui colunas que gurdam grandes informações (tipo IMAGE) e o buffer de memória não suportou ? Será que terei que mexer na configuração da memória para corrigir isso ?Como através desse procedimento eu não estava conseguindo fazer a exportação da tabela, então resolvi levar a base de dados que tinha esta tabela para o servidor destino e lá fazer a exportação das linhas desta tabela origem para a tabela destino através de duas opções :
1) Utilizando o BCP, que funcionou perfeitamente;
2) E o outro método que funcionou também foi através do comando "INSERT INTO base_destino..tabela_destino SELECT * from base_origem..tabela_origem"
Ou seja, a solução de contorno eu já dei para o meu problema, mas eu gostaria muito de saber o porque do erro ocorrido quado utilizei a opção "Sql Server Export and Import Wizard" e como corrigi-lo.
Agradeço antecipadamente a ajuda dos senhores.
José Luiz
- Editado José Luiz SP sexta-feira, 2 de dezembro de 2011 03:35
Respostas
-
José Luiz
Tenta fazer esta exportação em lotes... tentan dividir estas informações em lotes menores...
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=138392
Att.
Marcelo Fernandes
MCP, MCDBA, MCSA, MCTS.
Se útil, classifique!!!
Me siga no twitter: @marcelodba- Sugerido como Resposta Eder Costa quarta-feira, 14 de dezembro de 2011 13:00
- Marcado como Resposta Eder Costa sexta-feira, 16 de dezembro de 2011 13:37