2009-11-06 3 views
1

원격 SQL Server Express (2005)에서 db를 백업하려면 TSQL 스크립트를 만들어야합니다. 다른 상자에 SQL Server 2005가 있습니다. 백업 작업을 수행하기 위해이 SQL Server 2005에서 스크립트를 어떻게 실행할 수 있는지 잘 모르겠습니다.원격 SQL Server Express의 백업 DB

스크립트는 다음과 같이이다 :

RESTORE DATABASE [myDB] FROM DISK = N'C:\Tmp\myDB.bak' WITH FILE = 1, 
    NOUNLOAD, STATS = 10 

사실, SQL Server 관리 Studio Express를 사용하여 원격 SQL 서버 익스프레스이 SQL 스크립트를 시도하고 확인을 실행합니다. 이 질문을하는 이유는 SQL Server 2005에서 작업을 예약 할 수 있지만 원격 SQL Server Express에서 예약 작업을 만들 수 없기 때문입니다.

또 다른 방법은 SQL Server Express에서 SQL SP를 먼저 만드는 것입니다. 그런 다음 간단한 콘솔 응용 프로그램을 작성하여 SQL에 연결하고 SP를 Windows 예약 된 작업으로 실행합니다.

답변

2

TSQL을 사용하지 않아도됩니다. SQL Server에는 또한 sqlmaint.exe이라는 유틸리티가 포함되어있어 로컬 또는 원격 SQL 서버에서 백업 작업을 수행 할 수 있습니다. 올바른 명령 줄 매개 변수 (documentation)와 함께 sqlmaint를 호출하는 배치 파일을 작성하고이 배치 파일을 Windows 스케줄러에 넣기 만하면됩니다.

여전히 TSQL에서 수행하려는 경우 SQL Server에는 osql.exe도 포함되어 있으므로 로컬 또는 원격 서버에서 임의의 SQL 문을 실행할 수 있습니다. 다시 간단한 배치 파일을 사용하여 자동화 할 수 있습니다.

편집 : 자신의 응용 프로그램을 사용하여 TSQL 스크립트를 호출하려는 경우 선택한 프로그래밍 언어 또는 데이터 액세스 기술을 알고 있으면 도움이 될 수 있습니다.

+0

문서 읽기. PlantName 또는 PlantID 란 무엇입니까? 어떻게 정의 할 수 있습니까? 내 이해는 계획의 데이터베이스 목록을 정의합니다 (내 경우에는 원격 SQL Server Express의 DB 목록입니다.) –

+0

PlanName 또는 PlanID가 필요하지 않습니다. 맨 마지막 예제를 살펴보십시오. 페이지. – Heinzi

+0

따라서, "sqlmaint -S myServer -D myDB -BkUpDB C : \ Tmp"와 같은 것을 사용합니다. 그러나 백업 파일의 이름은 자동 생성됩니다 (BkUpDB on 참조). 해당 페이지) 고정 된 파일 이름이 필요한 경우 osql 솔루션을 고려하십시오 – Heinzi