erro ao salvar backup em uma pasta remota

1,481 views
Skip to first unread message

Daniela Eler

unread,
Mar 9, 2012, 1:51:09 PM3/9/12
to SQLServerDF
Pessoal, boa tarde
Preciso de uma ajuda, estou tentando salvar um backup em uma pasta
mapeada pela rede e está dando o seguinte erro, essa pasta já tem
todas as permissões, coloquei até permissão para todos, mas mesmo
assim não está funcionando.

Erro:
Msg 3201, Level 16, State 1, Line 2
Cannot open backup device '\\servidor\BackUp\HISTORICOS.bak'.
Operating system error 5(Acesso negado.).
Msg 3013, Level 16, State 1, Line 2
BACKUP DATABASE is terminating abnormally.


Eu fiz o mapeamento da rede no sql server, seguindo instruções que vi
em um forum

exec xp_cmdshell 'net use z: "\\servidor\BackUp" senha/
user:usuario_rede'

Tentei executar o script abaixo, mas deu erro de permissão. 'Acesso
negado.'
exec xp_cmdshell 'dir z:\HISTORICOS.bak'




O comando abaixo também dá erro
BACKUP DATABASE [historicos]
TO DISK = N'z:\HISTORICOS.bak'
WITH NOFORMAT, INIT, NAME = N'HISTORICOS-Full Database Backup', SKIP,
NOREWIND, NOUNLOAD, STATS = 10
GO



Msg 3201, Level 16, State 1, Line 1
Cannot open backup device 'z:\HISTORICOS.bak'. Operating system error
5(Acesso negado.).
Msg 3013, Level 16, State 1, Line 1
BACKUP DATABASE is terminating abnormally.



Desde já, obrigada.

Marina Marques

unread,
Mar 9, 2012, 1:54:18 PM3/9/12
to sqlse...@googlegroups.com
O usuario que faz o backup, tem permissão de escrita na pasta mapeada?
--
----------------------------------------------
Att.
Marina Marques Malvino

Renato Cantarino

unread,
Mar 9, 2012, 1:59:35 PM3/9/12
to sqlse...@googlegroups.com
remoto você 
precisa usar TSQL e especificar um caminho de UNC válido para a parte remota que é acessível à conta de qual 
o backup e rodado. 

Procure pela sintax: BACKUP DATABASE 
no BOL.

BACKUP DATABASE pubs to disk='\\backupserver\db\pubs.bak' 

Daniela Eler

unread,
Mar 9, 2012, 2:06:19 PM3/9/12
to SQLServerDF
Estou usando usuário de rede e ele tem permissão total a pasta. Tem
algum outro usuário que preciso dar permissão?
algum do próprio sql server?




On 9 mar, 15:54, Marina Marques <marind...@gmail.com> wrote:
> O usuario que faz o backup, tem permissão de escrita na pasta mapeada?
>

Demétrio Silva

unread,
Mar 9, 2012, 2:13:21 PM3/9/12
to sqlse...@googlegroups.com
Olá Daniela,

O comando é executado dentro de um job? Caso sim, você precisa dar permissão à pasta para o usuário do SQL Server Agent.

Abraço,
--
Demétrio Silva
MCP - MCTS MCITP - MCT - SQL Server 2008

Lucas Dias

unread,
Mar 9, 2012, 2:14:59 PM3/9/12
to sqlse...@googlegroups.com
Compartilhe esta pasta com o Grupo SQLADMINS

Daniela Eler

unread,
Mar 9, 2012, 2:20:01 PM3/9/12
to SQLServerDF
por enquanto estou executando pela query, mas posteriormente irei
colocar em um job

On 9 mar, 16:13, Demétrio Silva <demetr...@gmail.com> wrote:
> Olá Daniela,
>
> O comando é executado dentro de um job? Caso sim, você precisa dar
> permissão à pasta para o usuário do SQL Server Agent.
>
> Abraço,
>

Ítalo Rabello

unread,
Mar 9, 2012, 2:24:22 PM3/9/12
to sqlse...@googlegroups.com
Se estiver usando proxy account para executar o xp_cmdshell, o usuário responsável por isso também precisará de permissão...

Dica, execute o comando abaixo e veja que usuário está executando o xp_cmdshell ...

exec xp_cmdshell 'whoami'

De permissão a este usuário...

Abraços
Ítalo Rabello

Em 9 de março de 2012 16:13, Demétrio Silva <deme...@gmail.com> escreveu:

Daniela Eler

unread,
Mar 9, 2012, 2:28:38 PM3/9/12
to SQLServerDF
o usuário que aparece é autoridade nt\serviço de rede
seria meu usuário de rede?

On 9 mar, 16:24, Ítalo Rabello <italorabe...@gmail.com> wrote:
> Se estiver usando proxy account para executar o xp_cmdshell, o usuário
> responsável por isso também precisará de permissão...
>
> Dica, execute o comando abaixo e veja que usuário está executando o
> xp_cmdshell ...
>
> exec xp_cmdshell 'whoami'
>
> De permissão a este usuário...
>
> Abraços
> Ítalo Rabello
>
> Em 9 de março de 2012 16:13, Demétrio Silva <demetr...@gmail.com> escreveu:
>
>
>
>
>
>
>
> > Olá Daniela,
>
> > O comando é executado dentro de um job? Caso sim, você precisa dar
> > permissão à pasta para o usuário do SQL Server Agent.
>
> > Abraço,
>

Ítalo Rabello

unread,
Mar 9, 2012, 2:33:18 PM3/9/12
to sqlse...@googlegroups.com
Acredito que a conta a qual o serviço do SQL ou Agent esteja sendo executado ...

Para executar o xp_cmdshell é necessário ser sysadmin ou criar uma proxy account.

Veja a possibilidade de criar uma proxy account e especificar um usuário com minimos privilégios.

Segue links:

http://support.microsoft.com/kb/890775
http://msdn.microsoft.com/en-us/library/ms175046.aspx

Abraços,
Ítalo Rabello

Daniela Eler

unread,
Mar 9, 2012, 3:03:45 PM3/9/12
to SQLServerDF
esse usuário já esta com sysadmin

On 9 mar, 16:33, Ítalo Rabello <italorabe...@gmail.com> wrote:
> Acredito que a conta a qual o serviço do SQL ou Agent esteja sendo
> executado ...
>
> Para executar o xp_cmdshell é necessário ser sysadmin ou criar uma proxy
> account.
>
> Veja a possibilidade de criar uma proxy account e especificar um usuário
> com minimos privilégios.
>
> Segue links:
>
> http://support.microsoft.com/kb/890775http://msdn.microsoft.com/en-us/library/ms175046.aspx
>
> Abraços,
> Ítalo Rabello

Demétrio Silva

unread,
Mar 9, 2012, 3:08:38 PM3/9/12
to sqlse...@googlegroups.com
Olá Daniela,

Já tentou executar o comando no formato abaixo no SSMS:

BACKUP DATABASE [historicos]
TO  DISK = N'\\NOMEDAPASTACOMPARTILHADANAREDE\HISTORICOS.bak'

WITH NOFORMAT, INIT,  NAME = N'HISTORICOS-Full Database Backup', SKIP,
NOREWIND, NOUNLOAD,  STATS = 10

Procure evitar o uso da XP_CMDSHELL tanto por questões de segurança quanto por performance.

Abraço,

Daniela Eler

unread,
Mar 9, 2012, 3:18:24 PM3/9/12
to SQLServerDF
Acabei de tentar e deu o mesmo erro

Msg 3201, Level 16, State 1, Line 2
Cannot open backup device ***. Operating system error 5(Acesso
negado.).
Msg 3013, Level 16, State 1, Line 2
BACKUP DATABASE is terminating abnormally.


Tentei utilizando o task no banco,mas tbm deu erro.


On 9 mar, 17:08, Demétrio Silva <demetr...@gmail.com> wrote:
> Olá Daniela,
>
> Já tentou executar o comando no formato abaixo no SSMS:
>
> BACKUP DATABASE [historicos]
> TO  DISK = N'\\*NOMEDAPASTACOMPARTILHADANAREDE*\HISTORICOS.bak'
> WITH NOFORMAT, INIT,  NAME = N'HISTORICOS-Full Database Backup', SKIP,
> NOREWIND, NOUNLOAD,  STATS = 10
>
> Procure evitar o uso da XP_CMDSHELL tanto por questões de segurança quanto
> por performance.
>
> Abraço,
>
> Em 9 de março de 2012 17:03, Daniela Eler <danielae...@gmail.com> escreveu:
>
>
>
>
>
>
>
>
>
> > esse usuário já esta com sysadmin
>
> > On 9 mar, 16:33, Ítalo Rabello <italorabe...@gmail.com> wrote:
> > > Acredito que a conta a qual o serviço do SQL ou Agent esteja sendo
> > > executado ...
>
> > > Para executar o xp_cmdshell é necessário ser sysadmin ou criar uma proxy
> > > account.
>
> > > Veja a possibilidade de criar uma proxy account e especificar um usuário
> > > com minimos privilégios.
>
> > > Segue links:
>
> >http://support.microsoft.com/kb/890775http://msdn.microsoft.com/en-us...

Marina Marques

unread,
Mar 9, 2012, 3:19:19 PM3/9/12
to sqlse...@googlegroups.com
Daniela, em outra pasta ele grava, ou dá acesso negado?

Demétrio Silva

unread,
Mar 9, 2012, 3:21:00 PM3/9/12
to sqlse...@googlegroups.com
Podes dar um print no compartilhamento e nas permissões e postar aqui por favor?

Abraço,

Em 9 de março de 2012 17:18, Daniela Eler <danie...@gmail.com> escreveu:

Raionan Andrade

unread,
Mar 9, 2012, 3:21:29 PM3/9/12
to sqlse...@googlegroups.com
faz o sequinte:

esquece o xp_cmdshell por enquanto e executa o backup como o demetrio indicou.

Mas antes vai no SQL Server Configuration Manager e veirfica qual usuário está executando o serviço do sql
depois, veririque se a pasta da acesso a este usuário.

Porém, se for localsystem, localservices ou networkservice a princípio não vai dar certo o backup remoto

e assim como demétrio falou, quando for no job, tb vai ter q ver o acesso do login que executa o sqlagent

abs
Raionan

Daniela Medeiros Eler

unread,
Mar 9, 2012, 3:36:05 PM3/9/12
to sqlse...@googlegroups.com
Segue os prints.


Coloquei meu usuário de rede para rodar o serviço do sql server e mesmo assim o erro continua.
permissão.JPG
permissão2.JPG
servico.jpg

Jefferson Oliveira

unread,
Mar 9, 2012, 5:23:19 PM3/9/12
to sqlse...@googlegroups.com
Boa noite,

Siga os passos:
Com a conta de rede que você está conectada no sql server, tente acessar via windows executar: \\diretorio do backup

No servidor de destino, abra o gerenciamento de sistema, va na tree view e veja: open files do servidor e verifique se esse arquivo(nome do arquivo de backup) está aberto pelo servidor, se sim, de um close nele.

Tente fazer o backup novamente.
--
-------------------------------------------------
att,

Jefferson Santos

Andre Nascimento

unread,
Mar 9, 2012, 5:43:20 PM3/9/12
to sqlse...@googlegroups.com
humm tive esse erro algumas vezes e o que resolveu foi o seguinte colocar o usuário com permissão na pastas remota.
--
O amor é sofredor, é benigno; o amor não é invejoso; o amor não trata com leviandade, não se ensoberbece.Não se porta com indecência, não busca os seus interesses, não se irrita, não suspeita mal;Não folga com a injustiça, mas folga com a verdade;Tudo sofre, tudo crê, tudo espera, tudo suporta.O amor nunca falha; mas havendo profecias, serão aniquiladas; havendo línguas, cessarão; havendo ciência, desaparecerá;
Ass.: André
Cel: 8530-1277

Daniela Eler

unread,
Mar 12, 2012, 7:55:34 AM3/12/12
to SQLServerDF
Como na minha máquina de teste tem 3 instâncias diferentes então
estava alterando o LOG ON AS da instância errada, alterei a instância
correta e deu certo o backup pela query e pelo job.


Muito obrigada a todos.


On 9 mar, 19:43, Andre Nascimento <andre1...@gmail.com> wrote:
> humm tive esse erro algumas vezes e o que resolveu foi o seguinte colocar
> o usuário com permissão na pastas remota.
>
> Em 9 de março de 2012 19:23, Jefferson Oliveira <joli...@gmail.com>escreveu:
>
>
>
>
>
>
>
>
>
> > Boa noite,
>
> > Siga os passos:
> > Com a conta de rede que você está conectada no sql server, tente acessar
> > via windows executar: \\diretorio do backup
>
> > No servidor de destino, abra o gerenciamento de sistema, va na tree view e
> > veja: open files do servidor e verifique se esse arquivo(nome do arquivo de
> > backup) está aberto pelo servidor, se sim, de um close nele.
>
> > Tente fazer o backup novamente.
>
> > Em sexta-feira, 9 de março de 2012, Daniela Medeiros Eler<
> > danielae...@gmail.com> escreveu:
>
> > > Segue os prints.
>
> > > Coloquei meu usuário de rede para rodar o serviço do sql server e mesmo
> > assim o erro continua.
>
> > > Em 9 de março de 2012 17:21, Raionan Andrade <raio...@gmail.com>
> > escreveu:
>
> > > faz o sequinte:
>
> > > esquece o xp_cmdshell por enquanto e executa o backup como o demetrio
> > indicou.
>
> > > Mas antes vai no SQL Server Configuration Manager e veirfica qual
> > usuário está executando o serviço do sql
> > > depois, veririque se a pasta da acesso a este usuário.
>
> > > Porém, se for localsystem, localservices ou networkservice a princípio
> > não vai dar certo o backup remoto
>
> > > e assim como demétrio falou, quando for no job, tb vai ter q ver o
> > acesso do login que executa o sqlagent
>
> > > abs
> > > Raionan
>
> > > Em 9 de março de 2012 16:33, Ítalo Rabello <italorabe...@gmail.com>
> > escreveu:
>
> > > Acredito que a conta a qual o serviço do SQL ou Agent esteja sendo
> > executado ...
>
> > > Para executar o xp_cmdshell é necessário ser sysadmin ou criar uma proxy
> > account.
>
> > > Veja a possibilidade de criar uma proxy account e especificar um usuário
> > com minimos privilégios.
>
> > > Segue links:
>
> > >http://support.microsoft.com/kb/890775
> > >http://msdn.microsoft.com/en-us/library/ms175046.aspx
>
> > > Abraços,
> > > Ítalo Rabello
>
> > > Em 9 de março de 2012 16:28, Daniela Eler <danielae...@gmail.com>
Reply all
Reply to author
Forward
0 new messages