2017-05-04 2 views
1

일주일에 한 번 Azure SQL 데이터베이스를 복원하여 기존 데이터베이스를 대체해야합니다. 즉, 일주일에 한 번, Azure_DB_2를 Azure_DB_1 (복원을 통해)로 완전히 대체해야하지만, 대체 된 데이터베이스의 이름은 Azure_DB_2로 유지해야합니다.Azure SQL 데이터베이스를 일정대로 복원

Azure SQL Server는 바꾸기와 함께 복원을 지원하지 않기 때문에 먼저 Azure_DB_2의 이름을 임시로 바꿔야합니다. 이를 위해 로컬 SQL Server에 에이전트 작업을 설정하여 Azure_DB_2의 이름을 Azure_DB_2a로 바꿉니다. 그럼 내가하고 싶은 건 복원 Azure_DB_1 이름으로 Azure_DB_2. 마지막 단계로 Azure_DB_2a 테이블을 삭제합니다.

중간 단계입니다. Azure_DB_1을 Azure_DB_2라는 이름으로 복원하십시오. 달성 방법으로 조금 혼란 스럽습니다. Azure Portal에서 쉽게 할 수 있지만 자동 스케줄링에는 도움이되지 않습니다.

가능하면 에이전트 작업의 단계로 추가하는 것이 좋겠지 만 올바르게 읽는다면 Powershell 스크립트를 통해 Azure SQL 데이터베이스 만 복원 할 수 있습니다. SSMS 내부에서 T-SQL을 사용하지 않습니까? 가장 좋은 해결책은 전체 프로세스를 하나의 에이전트 작업에 포함시키는 것입니다. 누군가 Azure Restore를 수행하기 위해 T-SQL 구문을 지원할 수 있습니까?

+2

Azure SQL 데이터베이스에는 T-SQL'BACKUP' 또는'RESTORE'가 없습니다. SQL Agent 작업에서 Powershell 스크립트 단계를 사용해 보셨습니까? –

+0

아, PS 스크립트를 에이전트 작업에서 사용할 수 있습니까? 좋아, 만약 내가 그런 일을 할 수 있다고 생각한다. – Stpete111

+1

예, SQL Server Agent는 PS 스크립트를 지원합니다. Azure Cmdlet을 설치해야합니다 (https://msdn.microsoft.com/en-us/library/dn135248%28v=nav.70%29.aspx). –

답변

1

Dan Guzman의 제안에 따라 에이전트 작업의 단계 중 하나 인 Powershell 스크립트를 추가했습니다. 모든 것이 완벽하게 작동합니다.

관련 문제