2013-10-14 7 views
-1

네트워크에 두 개의 시스템 (A, B)이 있으며 A부터 B 저장소로 SQL 백업을 만들고 싶습니다. 시스템 ham sql 2008이 실행 중입니다. A DB의 링크 서버를 B Management Studio에 추가했습니다. 하지만 다음 명령은 오류입니다.백업 연결된 서버의 MS SQL Server db

BACKUP DATABASE [10.45.2.63].[DB] TO DISK = N'E:\BackUp\60\DB.BK' 
-- COMPAC RAR 
DECLARE @SERVER VARCHAR(100), @COMMAND VARCHAR(100), @FILE VARCHAR(100) 
SET @SERVER = @@SERVERNAME 
SET @COMMAND = 'E:\BackUp\RAR\RAR.exe A E:\BackUp\60\' + @SERVER + '_BASE.RAR E:\BackUp\60\DB.BK' 
EXEC XP_CMDSHELL @COMMAND 
-- EXCLUIR FILE BACKUP 
EXEC XP_CMDSHELL 'DEL E:\BackUp\60\DB.BK' 

난 [DB]. 10.45.2.63]에서 데이터를 선택하기위한 아무런 문제가 없지만, 캔트 B 시스템에 백업.

위의 쿼리에서 sql은 "[10.45.2.63]"에 오류를 발생시키고이를 링크 된 서버로 인식하지 못했습니다.

+1

무엇이 오류입니까? – geomagas

+0

연결된 서버가'[10.45.2.63]'이라고 가정합니다 (이 정보는 알아두면 편리합니다). 연결된 서버에서'OPENQUERY'를 사용하여 무언가를 원격으로 실행하려면'BACKUP'과 함께 작동하는지 모른다. –

답변

0

처음에는 오류 메시지없이 벽면의 일부 물건을 제외하고는 어떻게 도울 수 있습니까?

연결된 서버를 만들 때 원격 서버에 연결할 때 사용할 자격 증명을 제공합니다. 여기에서 시작하여이 자격 증명에 백업 수행 기능이 있습니까?

둘째, 서버 B의 저장소에 백업한다고 했으므로 "E"가 매핑 된 드라이브라고 가정합니다. 그렇다면 매핑 된 드라이브 문자 대신 UNC를 먼저 사용하십시오. 드라이브 문자는 사용자 특정 (IE. //10.45.2.64/ShareName) 둘째, 연결된 서버의 자격 증명은 한 서버에서 다른 서버에 액세스하여 백업을 작성합니까? 다른 서버에 백업을 수행하라는 메시지가 표시되며 원격 서버에서 백업을 수행하지 않습니다.

백업 할 서버에서 시작하여이 자격 증명을 사용하여 테스트 한 다음 작동 할 때까지 OUT으로 작업하십시오. 그리고 무엇보다도, 당신의 실수를 저 지르시오!

+0

답장을 보내 주셔서 감사합니다. 그렇습니다. 선택 쿼리에 문제가 없으므로 자격 증명이 괜찮다고 생각합니다. [10.45.2.63] 전에 연결된 서버 이름이 undefiend가되기 전에 "BACKUP DATABASE"를 넣으면 문제가 발생하지만 "Select * from"[10.45.2.63] "을 사용하면 작동합니다 : | –

+0

"READ " 데이터는 데이터베이스의 백업을 수행 할 수있는 것과는 완전히 다른 점이 있습니다. 하나만 할 수 있기 때문에, 아무 것도 할 수 없다는 의미에서 다른 것을 할 수 있습니다. 내가 훌륭한 가수가 될 것임을 알리는 것과 같습니다. 자전거 타기 – Steve

+0

로컬 서버 (일부 제한 사항)와 정확히 같은 방식으로 작동하지 않는 연결된 서버가있는 것 같습니다. "E"문자는 서버 B의 실제 드라이브였습니다. 문제가있는 것 같습니다. –