Exportação e Importação de Bases de dados MSSQL mais de um Compartilhamento de Rede
- Mike Sherman
- 8 de outubro de 2020, 9:00 am EDT
Quando se trabalha com bases de dados MSSQL, você pode achar que você precisa para exportar bases de dados através de um compartilhamento de rede diretamente a partir do SQL Server Management Studio (SMSS) de interface. Embora o SMSS não contenha essa função nativamente, mostraremos uma solução alternativa!
Primeiro, vamos cobrir a exportação e importação de bancos de dados MSSQL
como uma necessidade básica para utilizar este guia, queremos ter certeza de que você sabe como exportar e importar seus bancos de dados como .arquivos bak. É assim que você faz backup de um banco de dados MSSQL e como move um banco de dados entre dois servidores. Esse processo é referido internamente no SSMS (SQL Server Management Studio) como backup ou restauração de um banco de dados, dependendo da Direção em que você está indo.
exportar um banco de dados MSSQL por Backup
para começar a exportar seu banco de dados, abra SSMS, faça login no seu servidor e navegue até seu banco de dados.
você pode fazer backup do banco de dados clicando com o botão direito do mouse nos bancos de dados desejados e navegando para tarefas > Backup.
isso abre o menu banco de dados de Backup, onde você pode selecionar seu banco de dados para backup, seu tipo de backup, destino do arquivo e várias outras opções. Para o bem deste artigo, não precisamos modificar nenhuma configuração adicional ou avançada neste momento, então apenas esteja ciente do menu e seu layout.
ao criar um backup do MSSQL, seu banco de dados será exportado como um .arquivo bak. Na seção destino do menu acima, você pode adicionar ou remover locais para fazer backup do banco de dados. Você pode adicionar um ou vários locais para o local de destino do seu .arquivo bak.Clique em OK e seu banco de dados será copiado para o local selecionado.
importando um banco de dados MSSQL restaurando
para restaurar um banco de dados, seguiremos um processo semelhante, mas ao contrário. Em vez de exportar o banco de dados para um .arquivo bak, estaremos importando o banco de dados do .arquivo de volta.
para importar seu banco de dados, clique com o botão direito do mouse no servidor em vez do banco de dados e selecione Restaurar Banco de dados.
isso leva você a um menu semelhante ao menu de backup, onde você pode selecionar o arquivo de onde está importando, sob a configuração do dispositivo, e seu destino de localização, bem como quaisquer outras opções avançadas que você possa precisar.
selecionar o ícone no menu Fonte > dispositivo permite que você selecione o.arquivo bak que você deseja importar. Clique em Adicionar e você pode navegar até o.arquivo bak que você deseja restaurar. Clique em OK e seu banco de dados será importado para o SQL server atual!
neste ponto, se você estiver tentando importar ou exportar para um compartilhamento de rede ou unidade mapeada, poderá encontrar alguma dificuldade.
por que não posso exportar diretamente para uma unidade mapeada?
a razão pela qual este guia existe é porque a Microsoft nativamente não inclui uma função para exportar um banco de dados diretamente para um compartilhamento de rede ou unidade mapeada. Quando você está exportando seu banco de dados para backups ou para importar para outro servidor, não é possível selecionar Nenhuma unidade em rede no menu ou inserir manualmente um local remoto.
se você tentar navegar até a unidade selecionando o ícone no menu Selecionar destino de Backup, sua unidade Z: em rede não será listada e apenas as unidades locais serão mostradas.
muitos tentam inserir manualmente o caminho para sua unidade de rede. Se você inserir diretamente o caminho para sua unidade de compartilhamento de rede, como Z:\mybackup.bak, você pode clicar em OK no menu Selecionar destino de Backup.
mas quando você clica em OK na exportação final, uma mensagem de erro semelhante a esta aparece:
se um backup não conseguir encontrar o caminho certo para armazenar o backup, uma mensagem de falha será exibida na exportação final.Como você pode ver, isso pode ser um problema se você precisar fazer backup de bancos de dados em um local remoto por falta de espaço ou por motivos de segurança. Normalmente, você teria que exportar o banco de dados localmente, copiá-lo para o servidor remoto e importá-lo para o SQL server de destino.
Como Contornar Essa Funcionalidade Ausente?
para fazer isso, uma série de scripts deve ser executada para adicionar a unidade em rede ao menu selecionável do MSSQL. A primeira coisa a fazer é excluir seu compartilhamento de rede atual, pois você o está recriando durante o processo na linha de comando SQL. Para fazer isso, basta clicar com o botão direito do mouse na unidade no file-explorer e selecionar “desconectar” ou abrir o prompt de comando e entrar:
net use Z: /delete
seu compartilhamento de rede é a letra da unidade de Z.
agora que você excluiu o compartilhamento existente, abra SSMS e crie uma nova consulta com os seguintes comandos:
EXEC sp_configure 'show advanced options', 1; GO RECONFIGURE; GO EXEC sp_configure 'xp_cmdshell',1 GO RECONFIGURE GO
clique em Executar e você verá a seguinte janela:
o que este script faz é configurar o shell de comando para SQL para permitir que você execute seus próprios scripts diretamente do shell de comando compatível com SQL.
depois de executar o comando acima, crie uma nova consulta e Execute o seguinte comando:
EXEC XP_CMDSHELL 'net use Z: \192.168.1.1\C$ /user:Administrator '
substitua 192.168.1.1 pelo endereço IP do seu servidor de destino remoto e atualize para ser a senha do usuário administrativo. Observe que, para criar esses compartilhamentos, você quase certamente precisa de direitos de administrador.
agora você pode verificar se a unidade em rede está configurada corretamente no SQL executando a seguinte consulta:
EXEC XP_CMDSHELL 'Dir V:'
você ativou o commandshell, criou um compartilhamento de rede dentro do SQL e verificou sua existência. Agora você pode exportar e importar backups diretamente deste local. Você pode vê-lo acessando seu banco de dados > Tarefas > Backup, onde você pode ver que a unidade Z: está disponível ao adicionar um local de destino ao qual fazer backup.
Parabéns! Agora você configurou um compartilhamento de rede dentro do SQL que persiste mesmo se você fechar e reabrir SSMS. Você pode fazer backup ou restaurar diretamente para este local agora, e não precisa mais se preocupar em fazer backup de bancos de dados localmente, apenas para ter que movê-los para um servidor remoto imediatamente depois.Mike Sherman trabalhou como administrador líder de servidores corporativos para um data center internacional, bem como consultor técnico para um MSP nacional. Ele tem anos de experiência com hospedagem, segurança e solução prática de problemas.Leia A Biografia Completa ”
Leave a Reply