원격 시스템/드라이브에서 백업할 수 있도록 SQL Server 활성화

원격 시스템/드라이브에서 백업할 수 있도록 SQL Server 활성화

저는 SQL Server(2000, 2005 및 2008)를 가지고 있으며 SQL 에이전트(또는 디스크에 대한 간단한 백업 데이터베이스 'xxx' = 'yyy')를 사용하여 원격 드라이브에 백업하고 싶습니다.

예: SQL 시스템에 매핑된 드라이브가 있습니다. 예를 들어 "M:"은 \\otherbox\someshare에 매핑됩니다.

기본적으로 SQL Server에서는 이러한 드라이브에 백업하는 것을 허용하지 않지만 이를 활성화할 수 있는 방법이 있다고 생각합니다. 누군가 나에게 문서를 알려줄 수 있습니까?

미리 감사드립니다.

답변1

대상을 지정할 때 UNC 경로를 사용하십시오. SQL 에이전트에는 "매핑된" "드라이브" 개념이 없습니다.

또한 SQL 에이전트는 일반적으로 "로컬 서비스" 또는 "로컬 시스템"으로 실행되므로 다른 컴퓨터의 원격 공유에 대한 권한이 없습니다.

몇 가지 선택 사항이 있습니다.

  • 도메인의 역할 계정으로 SQL 에이전트를 실행합니다. 해당 계정에 백업을 저장하려는 디렉터리/공유에 쓸 수 있는 권한을 부여하십시오.

  • SQL 에이전트를 "네트워크 서비스"로 실행합니다. 서비스가 실행되고 있는 컴퓨터의 도메인 컴퓨터 계정으로 공유 서버에 인증됩니다. 해당 계정에 백업을 저장하려는 디렉터리/공유에 쓸 수 있는 권한을 부여하십시오.

  • 도메인이 없는 경우 SQL 에이전트를 호스팅하는 머신과 백업 파일을 호스팅하는 머신 모두에 동일한 사용자 이름과 비밀번호를 사용하여 계정을 만듭니다. SQL 에이전트를 이 "역할" 계정으로 실행하도록 변경하고 해당 계정에 백업을 저장할 디렉터리/공유에 쓸 수 있는 권한을 부여합니다. ("가난한 자의 영역"...)

답변2

UNC 경로에 대한 두 답변에 전적으로 동의합니다.

또한 매핑된 드라이브를 사용하더라도 간단한 해결 방법이 있다는 점을 추가하고 싶습니다. 서버의 일반 드라이브에 백업을 실행할 수 있습니다. 그런 다음 추가할 수 있습니다.

xp_cmdshell 'XCOPY [source] [destination] \flags'

실행하는 작업 또는 SQL 스크립트에 대한 SQL 명령입니다.

xp_cmdshell을 사용하면 더 많은 작업을 수행할 수 있습니다. 예를 들어 7z와 같은 외부 아카이브 명령줄 도구를 실행하여 파일을 매핑된 드라이브에 복사하기 전에 압축합니다(원격 연결이 너무 느린 경우...).

추신: 노출 영역 구성 도구를 사용하고 sp_configure를 실행하여 xp_cmdshell을 활성화 및 비활성화할 수 있다는 점을 언급하는 것을 잊었습니다(기본적으로 비활성화되어 있습니다).

답변3

SQL Server가 도메인 계정으로 실행되지 않는 경우 여기에 설명된 대로 sqlserver 계정(귀하의 계정이 아님)에 대한 네트워크 드라이브를 매핑할 수 있습니다.스택오버플로 답변

먼저 xp_cmdshell을 활성화해야 합니다.

-- allow changes to advanced options 
EXEC sp_configure 'show advanced options', 1
GO
-- Update currently configured values for advanced options.
RECONFIGURE
GO
-- To enable xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO
-- Update currently configured values for advanced options.
RECONFIGURE
GO

그런 다음 다음을 사용하여 드라이브를 매핑할 수 있습니다.

EXEC xp_cmdshell 'NET USE Z: \\Srv\Path password1 /USER:Domain\UserName'

마지막으로 매핑된 드라이브에 백업할 수 있습니다.

BACKUP DATABASE myDB TO DISK = 'z:\file.bak'

답변4

SQL Server는 네트워크 지연을 매우 용납하지 않는다는 점을 명심하십시오. 이런 일이 발생하거나 발생하는 경향이 있으면 백업이 실패합니다. 프로덕션 환경에서는 이 방법을 전혀 권장하지 않습니다.

로컬로 백업한 다음 복사하는 것이 좋습니다.

관련 정보