Como fazer o SQL atachar um banco de dados de uma unidade mapeada

Como é sabido o SQLServer não permite atachar um banco de dados que esteja em outra máquina. Mas há uma forma de fazer isso, segue abaixo:

  • Crie um compartilhamento do diretório onde está o banco de dados a ser atachado;
  • Na máquina que deseja atachar o banco de dados execute o comando:

———————————————————————

— Ativar funções avançadas (1=ativo, 0=inativo)

———————————————————————-

EXEC sp_configure ‘show advanced options’, 1;

GO

RECONFIGURE;

GO

——————————————————————-

— Ativar função xp_cmdshell (1=ativo, 0=inativo)

——————————————————————–

EXEC sp_configure ‘xp_cmdshell’,1

GO

RECONFIGURE

GO

——————————————————————————

— Define mapeamento a ser utilizado (caminho relativo)

——————————————————————————

EXEC XP_CMDSHELL ‘net use Unidade: \\Server\Compartilhamento /user:Server\Usuário Senha’

——————————————————–

— Valida estrutura mapeada

——————————————————–

EXEC XP_CMDSHELL ‘Dir Unidade:’

 

Após a execução do comando basta fazer o atach normalmente a unidade mapeada vai aparecer na lista e será possível ver o banco ou os bancos a serem atachados.

Você deve estar logado para postar um comentário