Убедитесь, что ваша учетная запись (windows или sql server) в SSMS имеет право на резервное копирование / восстановление, sysadmin, db_backoperator и т. Д.
Процессы резервного копирования и восстановления выполняются под учетной записью службы SQL Server (Engine), поскольку вы можете запускать SSMS на своем портативном компьютере, но работать с файлами на сервере.
Неважно, под кем вы вошли, это учетная запись службы, которая нуждается в доступе к каталогу и файлам.
Учетная запись службы - это учетная запись домена или локальная служба? Я использую учетную запись домена, чтобы работать с файлами по пути UNC.
Кроме того, есть две системные хранимые процедуры, которые выполняются во время диалога просмотра: master.dbo.xp_dirtree, master.dbo.xp_fileexist.
Если они возвращают пустые результаты из окна запроса, это проблема с разрешением для учетной записи службы SQL Server.
Операция обзора трассировки профилировщика (Adventure Works).
declare @Path nvarchar(255)
declare @Name nvarchar(255)
select @Path = N'C:\mssql\save me\backup\AdventureWorks2012'
select @Name = N'AdventureWorks2012_backup_2012_11_30_160723_2147507.bak'
create table #filetmpfin (Name nvarchar(255) NOT NULL, IsFile bit NULL)
if(@Name is null)
begin
create table #filetmp (Name nvarchar(255) NOT NULL, depth int NOT NULL, IsFile bit NULL )
insert #filetmp EXECUTE master.dbo.xp_dirtree @Path, 1, 1
insert #filetmpfin select Name, IsFile from #filetmp f
drop table #filetmp
end
if(NOT @Name is null)
begin
declare @FullName nvarchar(300)
if(@Path is null)
select @FullName = @Name
else
select @FullName = @Path + '\' + @Name
create table #filetmp2 ( Exist bit NOT NULL, IsDir bit NOT NULL, DirExist bit NULL )
insert #filetmp2 EXECUTE master.dbo.xp_fileexist @FullName
insert #filetmpfin select @Name, 1-IsDir from #filetmp2 where Exist = 1 or IsDir = 1
drop table #filetmp2
end
SELECT
Name AS [Name],
IsFile AS [IsFile]
FROM
#filetmpfin
ORDER BY
[IsFile] ASC,[Name] ASC
drop table #filetmpfin
person
CRAFTY DBA
schedule
03.09.2013