Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Anexar um banco de dados armazenado remotamente


Você deve ser capaz de anexar um banco de dados no caminho UNC (eu não usaria uma unidade mapeada - essa unidade é mapeada para você, não a conta de serviço do SQL Server), mas você deve garantir que a conta de serviço do SQL Server tenha lido/ permissões de gravação na pasta remota e você precisa executar o sinalizador de rastreamento 1807 (por favor leia o post de Brent Ozar sobre isso ).

Também não use a GUI para isso. Depois de definir o sinalizador de rastreamento, reiniciar o serviço e configurar as permissões corretamente, use uma nova janela de consulta e execute o seguinte comando:
CREATE DATABASE db_name 
ON (Filename = '\\uncpath\share\file.mdf'),
   (Filename = '\\uncpath\share\file.ldf')
FOR ATTACH;

(A interface do usuário nunca oferecerá um caminho UNC, não importa quais sinalizadores de rastreamento você tenha definido ou quais permissões estejam habilitadas.)

Esteja preparado para lidar com um banco de dados corrompido e possivelmente irrecuperável caso o compartilhamento de rede caia, é claro.

Se isso soa assustador para você, ótimo! Deveria! Esta não é uma boa ideia. Em vez disso, você deve liberar algum espaço, adicionar uma unidade ou hospedar o banco de dados em uma instância diferente.