다음을 통해 공유


Restore-SqlDatabase

백업 또는 트랜잭션 로그 레코드에서 데이터베이스를 복원합니다.

구문

Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-Database] <String>
       [-Path <String[]>]
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-Database] <String>
       -ServerInstance <String[]>
       [-Credential <PSCredential>]
       [-ConnectionTimeout <Int32>]
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-Database] <String>
       -InputObject <Server[]>
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-DatabaseObject] <Database>
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

Restore-SqlDatabase cmdlet은 SQL Server 데이터베이스에서 복원 작업을 수행합니다. 여기에는 전체 데이터베이스 복원, 트랜잭션 로그 복원 및 데이터베이스 파일 복원이 포함됩니다.

이 cmdlet은 Microsoft.SqlServer.Management.Smo.Restore 클래스를 모델로 합니다. 이 cmdlet의 매개 변수는 일반적으로 Smo.Restore 개체의 속성에 해당합니다.

예제

예제 1: 네트워크 공유의 백업 파일에서 데이터베이스 복원

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak"

이 명령은 파일 \\mainserver\databasebackup\MainDB.bak 전체 데이터베이스 MainDB 서버 인스턴스 Computer\Instance복원합니다.

예제 2: 데이터베이스 트랜잭션 로그 복원

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log

이 명령은 파일 \\mainserver\databasebackup\MainDB.trn 데이터베이스 MainDB 대한 트랜잭션 로그를 서버 인스턴스 Computer\Instance복원합니다.

예제 3: 데이터베이스 복원 및 암호 프롬프트

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak" -Credential (Get-Credential "sa")

이 명령은 sa SQL 로그인을 사용하여 파일 \\mainserver\databasebackup\MainDB.bak 서버 인스턴스 Computer\Instance전체 데이터베이스 MainDB 복원합니다. 이 명령은 인증을 완료하기 위한 암호를 묻는 메시지를 표시합니다.

예제 4: NORECOVERY 옵션을 사용하여 트랜잭션 로그 복원

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log -NoRecovery

이 명령은 파일 \\mainserver\databasebackup\MainDB.trn 서버 인스턴스 Computer\InstanceNORECOVERY 옵션을 사용하여 데이터베이스 MainDB 트랜잭션 로그를 복원합니다.

예제 5: 특정 시점까지 트랜잭션 로그 레코드 복원

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log -ToPointInTime "Sep 21, 2017 11:11 PM"

이 명령은 2017년 9월 21일 오후 11시 11분 ToPointInTime 매개 변수에 전달된 날짜까지 데이터베이스 MainDB 트랜잭션 로그를 복원합니다.

예제 6: 데이터베이스 복원 및 데이터 및 로그 파일 재배치

PS C:\> $RelocateData = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("MainDB_Data", "c:\MySQLServer\MainDB.mdf")
PS C:\> $RelocateLog = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("MainDB_Log", "c:\MySQLServer\MainDB.ldf")
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RelocateFile @($RelocateData,$RelocateLog)

다음은 전체 데이터베이스 MainDB 서버 인스턴스 Computer\Instance복원하고 데이터 및 로그 파일을 재배치하는 예제입니다. 이동되는 각 파일에 대해 예제는 Microsoft.SqlServer.Management.Smo.RelocateFile 클래스의 인스턴스를 생성합니다. 각 생성자는 파일의 논리적 이름과 파일이 대상 서버에 배치될 실제 위치라는 두 개의 인수를 사용합니다. RelocateFile 개체는 Restore-SqlDatabase cmdlet의 RelocateFile 매개 변수에 전달됩니다.

예제 7: 테이프에서 데이터베이스 복원

PS C:\> $TapeDevice = New-Object Microsoft.Sqlserver.Management.Smo.BackupDeviceItem("\\.\tape0", "Tape")
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupDevice $TapeDevice

다음은 \\.\tape0 테이프 디바이스에서 서버 인스턴스 Computer\Instance데이터베이스 MainDB 복원하는 예제입니다. 이 디바이스를 나타내기 위해 예제에서는 Microsoft.Sqlserver.Management.Smo.BackupDeviceItem 클래스의 인스턴스를 생성합니다. 생성자는 백업 디바이스의 이름과 백업 디바이스의 형식이라는 두 개의 인수를 사용합니다. 이 BackupDeviceItem 개체는 Restore-SqlDatabase cmdlet의 BackupDevice 매개 변수에 전달됩니다.

예제 8: Azure Blob Storage 서비스에서 데이터베이스 복원

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "https://mystorageaccountname.blob.core.windows.net/container/MyDB.bak" -SqlCredential "mySqlCredential"

이 명령은 Windows Azure Blob Storage 서비스의 파일에서 서버 인스턴스 Computer\Instance전체 데이터베이스 MainDB 복원합니다.

예제 9: SQL2016 데이터베이스 백업 및 -AutoRelocateFile 사용하여 SQL2017 복원

PS C:\> Get-SqlDatabase -ServerInstance MYSERVER\SQL2016 -Database AdventureWorks | Backup-SqlDatabase -BackupFile 'C:\BAK2\AdventureWorks.bak'
PS C:\> $restore = Restore-SqlDatabase -ServerInstance MYSERVER\SQL2017 -Database AdventureWorks2016 -BackupFile 'C:\BAK2\AdventureWorks.bak' -AutoRelocateFile -PassThru
PS C:\> $db.RelocateFiles

LogicalFileName     PhysicalFileName
---------------     ----------------
AdventureWorks_Data C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\DATA\AdventureWorks_Data.mdf
AdventureWorks_Log  C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\DATA\AdventureWorks_Log.ldf

# You can see that the original PhysicalFileNames were indeed differet by running the followiong query:
PS C:\> Invoke-Sqlcmd -ServerInstance MYSERVER\SQL2016 -Query "RESTORE FILELISTONLY FROM  DISK = N'C:\BAK2\AdventureWorks.bak' WITH NOUNLOAD" | Select -Property LogicalName,PhysicalName

LogicalName         PhysicalName
-----------         ------------
AdventureWorks_Data C:\Program Files\Microsoft SQL Server\MSSQL13.SQL2016\MSSQL\DATA\AdventureWorks_Data.mdf
AdventureWorks_Log  C:\Program Files\Microsoft SQL Server\MSSQL13.SQL2016\MSSQL\DATA\AdventureWorks_Log.ldf

첫 번째 명령은 컴퓨터 MYSERVER실행되는 SQL2016 인스턴스에서 데이터베이스 AdventureWorks 백업합니다. 백업은 C:\BAK2저장됩니다.

동일한 백업 파일은 두 번째 cmdlet에서 동일한 컴퓨터에서 실행되는 SQL2017 인스턴스의 데이터베이스를 복원하는 데 사용됩니다(MYSERVER). -AutoRelocate 스위치가 없으면 위의 두 테이블에 표시된 것처럼 물리적 파일이 다르기 때문에 cmdlet이 실패했습니다(또한 파일이 SQL2016 사용 중이고 SQL2017 액세스할 수 없을 가능성이 높습니다). -AutoRelocate 사용하면 사용자가 빌드하는 데 매우 지루한 인수인 -RelocationFile명시적으로 사용하지 않아도 될 수 있습니다.

참고: SQL2016 인스턴스와 SQL2017 인스턴스 모두 C:\BAK2 폴더에 액세스할 수 있다고 가정합니다.

매개 변수

-AccessToken

사용자/암호 또는 Windows 인증 대신 SQL Server에 인증하는 데 사용되는 액세스 토큰입니다.

예를 들어 Service Principal 또는 Managed Identity사용하여 SQL Azure DB 연결하고 SQL Azure Managed Instance 데 사용할 수 있습니다.

사용할 매개 변수는 토큰을 나타내는 문자열이거나 Get-AzAccessToken -ResourceUrl https://database.windows.net실행하여 반환된 PSAccessToken 개체일 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:PSObject
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-AutoRelocateFile

이 스위치를 지정하면 cmdlet은 RelocateFile이러한 논리 파일을 지정하지 않는 한 백업의 모든 논리 파일을 자동으로 재배치합니다. DefaultFile 및 DefaultLog 서버는 파일을 재배치하는 데 사용됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-BackupDevice

백업이 저장되는 디바이스를 지정합니다. 이 매개 변수는 BackupFile 매개 변수와 함께 사용할 수 없습니다. 테이프 디바이스에 백업하는 경우 이 매개 변수를 사용합니다.

형식:BackupDeviceItem[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-BackupFile

백업 파일이 저장되는 위치 또는 위치를 지정합니다. 이 매개 변수는 선택 사항입니다. 지정하지 않으면 서버의 기본 백업 위치가 로그 복원에 대한 이름 <database name>.trn 검색되거나 다른 모든 유형의 복원에 대한 <database name>.bak 검색됩니다. 이 매개 변수는 BackupDevice 매개 변수와 함께 사용할 수 없습니다. Windows Azure Blob Storage 서비스(URL)에 백업하는 경우 이 매개 변수 또는 BackupDevice 매개 변수를 지정해야 합니다.

형식:String[]
Position:2
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-BlockSize

백업에 대한 실제 블록 크기(바이트)를 지정합니다. 지원되는 크기는 512, 1024, 2048, 4096, 8192, 16384, 32768 및 65536(64KB) 바이트입니다. 기본값은 테이프 디바이스의 경우 65536이고 다른 모든 디바이스의 경우 512입니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-BufferCount

백업 작업에 사용할 총 I/O 버퍼 수를 지정합니다. 양수 정수를 지정할 수 있습니다. 버퍼에 대한 Sqlservr.exe 프로세스에 가상 주소 공간이 부족한 경우 메모리 부족 오류가 발생합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Checksum

복원 작업 중에 체크섬 값이 계산되었음을 나타냅니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ClearSuspectPageTable

복원 작업 후에 주의 대상 페이지 테이블이 삭제됨을 나타냅니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Confirm

cmdlet을 실행하기 전에 확인 메시지를 표시합니다.

형식:SwitchParameter
별칭:cf
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ConnectionTimeout

시간 제한 오류가 발생하기 전에 서버 연결을 대기할 시간(초)을 지정합니다. 시간 제한 값은 0에서 65534 사이의 정수여야 합니다. 0을 지정하면 연결 시도가 시간 초과되지 않습니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ContinueAfterError

체크섬 오류가 발생할 때 작업이 계속되도록 나타냅니다. 설정하지 않으면 체크섬 오류가 발생한 후 작업이 실패합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Credential

이 작업을 수행할 수 있는 권한이 있는 SQL Server 로그인에 대한 자격 증명을 포함하는 PSCredential 개체를 지정합니다.

형식:PSCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Database

복원할 데이터베이스의 이름을 지정합니다. DatabaseObject 매개 변수와 함께 사용할 수 없습니다. 이 매개 변수를 사용하면 Path, InputObject또는 ServerInstance 매개 변수도 지정해야 합니다.

형식:String
Position:1
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DatabaseFile

복원 작업의 대상이 되는 데이터베이스 파일을 지정합니다. 이는 RestoreAction 매개 변수가 Files로 설정된 경우에만 사용됩니다. RestoreAction 매개 변수가 Files로 설정된 경우 DatabaseFileGroups 또는 DatabaseFiles 매개 변수도 지정해야 합니다.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DatabaseFileGroup

복원 작업의 대상이 되는 데이터베이스 파일 그룹을 지정합니다. RestoreAction 매개 변수가 File로 설정된 경우에만 사용됩니다. RestoreAction 매개 변수가 Files로 설정된 경우 DatabaseFileGroups 또는 DatabaseFiles 매개 변수도 지정해야 합니다.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DatabaseObject

복원 작업에 대한 데이터베이스 개체를 지정합니다.

형식:Database
Position:1
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Encrypt

SQL Server에 연결할 때 사용할 암호화 유형입니다.

이 값은 Microsoft.Data.SqlClient 드라이버의 SqlConnection 개체에 있는 Encrypt 속성 SqlConnectionEncryptOption 매핑됩니다.

모듈의 v22에서 기본값은 Optional(v21과의 호환성을 위해)입니다. 모듈의 v23+에서 기본값은 기존 스크립트에 대한 호환성이 손상되는 변경을 만들 수 있는 '필수'입니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:String
허용되는 값:Mandatory, Optional, Strict
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-FileNumber

백업 매체에서 대상 백업 집합을 식별하는 데 사용되는 인덱스 번호를 지정합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-HostNameInCertificate

SQL Server TLS/SSL 인증서의 유효성을 검사하는 데 사용할 호스트 이름입니다. SQL Server 인스턴스가 Force Encryption을 사용하도록 설정되어 있고 호스트 이름/짧은 이름을 사용하여 인스턴스에 연결하려는 경우 이 매개 변수를 전달해야 합니다. 이 매개 변수를 생략하면 강제 암호화를 사용하도록 설정된 SQL Server 인스턴스에 연결하려면 FQDN(정규화된 도메인 이름)을 -ServerInstance 전달해야 합니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-InputObject

복원이 발생하는 SQL Server 인스턴스의 서버 개체를 지정합니다.

형식:Server[]
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-KeepReplication

복제 구성이 유지됨을 나타냅니다. 설정하지 않으면 복제 구성이 복원 작업에서 무시됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-MaxTransferSize

백업 미디어와 SQL Server 인스턴스 간에 전송할 최대 바이트 수를 지정합니다. 가능한 값은 최대 4194304 바이트(4MB)까지 65536바이트(64KB)의 배수입니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-MediaName

미디어 집합을 식별하는 이름을 지정합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-NoRecovery

데이터베이스가 복원 상태로 복원됨을 나타냅니다. 롤백 작업이 발생하지 않으며 추가 백업을 복원할 수 있습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-NoRewind

복원이 완료될 때 테이프 드라이브가 끝 위치에 열려 있음을 나타냅니다. 설정하지 않으면 작업이 완료된 후 테이프가 되감습니다. 디스크 복원에는 적용되지 않습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Offset

복원할 페이지 주소를 지정합니다. RestoreAction이 OnlinePage로 설정된 경우에만 사용됩니다.

형식:Int64[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Partial

복원 작업이 부분 복원임을 나타냅니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PassThru

이 cmdlet은 복원 작업을 수행하는 데 사용되는 Smo.Backup 개체를 출력한다는 것을 나타냅니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Path

복원 작업을 실행할 SQL Server 인스턴스의 경로를 지정합니다. 이 매개 변수는 선택 사항입니다. 지정하지 않으면 현재 작업 위치가 사용됩니다.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ProgressAction

powerShell이 스크립트, cmdlet 또는 공급자(예: Write-Progress cmdlet에서 생성된 진행률 표시줄)에 의해 생성된 진행률 업데이트에 응답하는 방법을 결정합니다. Write-Progress cmdlet은 명령의 상태를 표시하는 진행률 표시줄을 만듭니다.

형식:ActionPreference
별칭:proga
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-RelocateFile

Smo.Relocate 파일 개체의 목록을 지정합니다. 각 개체는 논리적 백업 파일 이름과 실제 파일 시스템 위치로 구성됩니다. 복원하면 복원된 데이터베이스가 대상 서버의 지정된 실제 위치로 이동합니다.

형식:RelocateFile[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ReplaceDatabase

데이터베이스의 새 이미지가 생성되었음을 나타냅니다. 이렇게 하면 이름이 같은 기존 데이터베이스를 덮어씁니다. 설정하지 않으면 해당 이름의 데이터베이스가 서버에 이미 있는 경우 복원 작업이 실패합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Restart

이 cmdlet이 부분적으로 완료된 복원 작업을 다시 시작했음을 나타냅니다. 설정하지 않으면 cmdlet은 백업 세트 시작 시 중단된 복원 작업을 다시 시작합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-RestoreAction

수행되는 복원 작업의 유형을 지정합니다. 유효한 값은 다음과 같습니다.

  • 데이터베이스. 데이터베이스가 복원됩니다.
  • 파일. 하나 이상의 데이터 파일이 복원됩니다. DatabaseFile 또는 DatabaseFileGroup 매개 변수를 지정해야 합니다.
  • OnlinePage. 사용자가 데이터베이스를 계속 사용할 수 있도록 데이터 페이지가 온라인으로 복원됩니다.
  • OnlineFiles. 데이터 파일은 사용자가 데이터베이스를 계속 사용할 수 있도록 온라인으로 복원됩니다. DatabaseFile 또는 DatabaseFileGroup 매개 변수를 지정해야 합니다.
  • 로그. 트랜잭션 로그가 복원됩니다.
형식:RestoreActionType
허용되는 값:Database, Files, OnlinePage, OnlineFiles, Log
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-RestrictedUser

복원된 데이터베이스에 대한 액세스가 db_owner 고정 데이터베이스 역할 및 dbcreator 및 sysadmin 고정 서버 역할로 제한됨을 나타냅니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Script

이 cmdlet은 복원 작업을 수행하는 Transact-SQL 스크립트를 출력한다는 것을 나타냅니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ServerInstance

SQL Server 인스턴스의 이름을 지정합니다. 이 서버 인스턴스는 복원 작업의 대상이 됩니다.

형식:String[]
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-SqlCredential

인증 정보를 저장하는 SQL Server 자격 증명 개체를 지정합니다. Blob Storage 서비스에 백업하는 경우 이 매개 변수를 지정해야 합니다. 저장된 인증 정보에는 Storage 계정 이름 및 연결된 액세스 키 값이 포함됩니다. 디스크 또는 테이프에 대해 이 매개 변수를 지정하지 마세요.

형식:PSObject
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StandbyFile

SQL Server 인스턴스에 대한 이미징 전략의 일부로 사용되는 실행 취소 파일의 이름을 지정합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StopAtMarkAfterDate

StopAtMarkName 매개 변수에 지정된 표시 이름과 함께 복구 작업의 중지 지점을 결정하는 데 사용할 날짜를 지정합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StopAtMarkName

복구 작업을 중지할 표시된 트랜잭션을 지정합니다. 이는 StopAtMarkAfterDate 사용하여 복구 작업의 중지 지점을 확인합니다. 복구된 데이터에는 표시가 포함된 트랜잭션이 포함됩니다. StopAtMarkAfterDate 값이 설정되지 않은 경우 지정된 이름의 첫 번째 표시에서 복구가 중지됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StopBeforeMarkAfterDate

복구 작업의 중지점을 확인하기 위해 StopBeforeMarkName 사용할 날짜를 지정합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StopBeforeMarkName

복구 작업을 중지하기 전에 표시된 트랜잭션을 지정합니다. 이는 StopBeforeMarkAfterDate 사용하여 복구 작업의 중지 지점을 확인합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ToPointInTime

데이터베이스 로그 복원을 위한 엔드포인트를 지정합니다. 이는 RestoreAction 로그로 설정된 경우에만 적용됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-TrustServerCertificate

신뢰의 유효성을 검사하기 위해 인증서 체인을 건너뛰는 동안 채널이 암호화되는지 여부를 나타냅니다.

모듈의 v22에서 기본값은 $true(v21과의 호환성을 위해)입니다. 모듈의 v23+에서 기본값은 '$false'이며, 이로 인해 기존 스크립트에 대한 호환성이 손상되는 변경이 발생할 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-UnloadTapeAfter

작업이 완료될 때 테이프 디바이스가 다시 해제되고 언로드됨을 나타냅니다. 설정하지 않으면 테이프 매체를 되감고 언로드하려고 시도하지 않습니다. 디스크 백업에는 적용되지 않습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-WhatIf

cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
별칭:wi
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

Microsoft.SqlServer.Management.Smo.Database

Microsoft.SqlServer.Management.Smo.Server[]

SMO를 지정합니다. 복원 작업이 수행되는 SQL Server 인스턴스를 설명하는 서버 개체입니다.

System.String[]