Microsoft Exchange Server. Часть 2. Примеры сценариев восстановления Иван Передерий Get-Mailboxdatabase DB1 | Get-mailbox Eseutil /r E05 /l C:\RestoreDB1\Logs\DB1 /d C:\RestoreDB1\Database\DB1 Eseutil /mh C:\RestoreDB8\Databases\DB8\DB8.edb Eseutil /r E0F /l C:\RestoreDB8\Logs\DB8 /d C:\RestoreDB8\Databases\DB8 New-MailboxDatabase –Recovery RecDB8 –EdbFilePath C:\RestoreDB8\Databases\DB8\DB8.edb –Server Ex1 Get-MailboxStatistics –Database RecDB8 | ft -auto New-MailboxRestoreRequest -SourceDatabase RecDB8 -SourceStoreMailbox 'Aaron' -TargetMailbox 'Aaron' Get-MailboxRestoreRequest | Get-MailboxRestoreRequestStatistics New-MailboxRestoreRequest -SourceDatabase RecDB8 -SourceStoreMailbox 'Aaron' -TargetMailbox 'Ivan' -TargetRootFolder AaronRestore -AllowLegacyDNMismatch Get-MailboxDatabase DB27 | fl Mount-Database DB27 Dismount-Database DB27 New-MailboxDatabase RecoveryDB27 -Recovery -EdbFilePath D:\DB\RecoveryDB27\DB27.edb -LogFolderPath L:\Logs\RecoveryDB27 -Server Ex1 Mount-Database RecoveryDB27 Get-MailboxStatistics –Database RecoveryDB27 New-MailboxRestoreRequest -SourceDatabase RecoveryDB27 -SourceStoreMailbox 'Roman' -TargetMailbox 'Roman' foreach($mailbox in Get-MailboxStatistics -Database RecoveryDB27) {New-MailboxRestoreRequest -SourceDatabase RecoveryDB27 –SourceStoreMailbox $mailbox.DisplayName -TargetMailbox $mailbox.DisplayName} Eseutil /R E04 /l L:\Logs\TempLogsDatabase2 /s L:\Logs\TempLogsDatabase2 /d L:\Logs\TempLogsDatabase2 /a /i New-MailboxDatabase Phoenix –Recovery –EdbFilePath L:\Logs\TempLogsDatabase2\Database2.edb –LogFolderPath L:\Logs\TempLogsDatabase2 –Server Ex1 New-MailboxRestoreRequest -SourceDatabase Phoenix -SourceStoreMailbox 'Sergey' -TargetMailbox 'Sergey' foreach($mailbox in Get-MailboxStatistics -Database Phoenix){New-MailboxRestoreRequest -SourceDatabase Phoenix -SourceStoreMailbox $mailbox.DisplayName -TargetMailbox $mailbox.DisplayName} New-ManagementRoleAssignment –Role "Mailbox Import Export" –User Administrator foreach($Mailbox in (Get-Mailbox)){ New-MailboxExportRequest -Mailbox $Mailbox -FilePath "\\SRV1\PST\$($Mailbox.Alias).pst" } Add-PSSnapIn Microsoft.Exchange.Management.PowerShell.E2010 New-MailboxImportRequest -Mailbox Oleg -FilePath \\SRV01\PST\Oleg.pst -TargetRootFolder "Recover" ----------------------------------------------------------------------------------------- Головоломка «выигрывающие стратегии». Пример решения на основе рекурсивного поиска Кирилл Ткаченко сим Колышек = 'x' сим Пусто = '-' цел СимволовПоГоризонтали = 12 цел таб Направления[1:4] цел ЧислоПроверок лит ИгровоеПоле алг Отшельник нач ИнициализацияКонстант ИнициализацияПеременных если не Решить то вывод "Нет решения.", нс все вывод "Число проверок: ", ЧислоПроверок, нс кон алг ИнициализацияКонстант нач Направления[1] := -1 Направления[2] := -СимволовПоГоризонтали Направления[3] := 1 Направления[4] := СимволовПоГоризонтали кон алг ИнициализацияПеременных нач ЧислоПроверок := 0 ИгровоеПоле := "..........." + нс ИгровоеПоле := ИгровоеПоле + "..........." + нс ИгровоеПоле := ИгровоеПоле + "....xxx...." + нс ИгровоеПоле := ИгровоеПоле + "....xxx...." + нс ИгровоеПоле := ИгровоеПоле + "..xxxxxxx.." + нс ИгровоеПоле := ИгровоеПоле + "..xxx-xxx.." + нс ИгровоеПоле := ИгровоеПоле + "..xxxxxxx.." + нс ИгровоеПоле := ИгровоеПоле + "....xxx...." + нс ИгровоеПоле := ИгровоеПоле + "....xxx...." + нс ИгровоеПоле := ИгровоеПоле + "..........." + нс ИгровоеПоле := ИгровоеПоле + "..........." + нс кон алг лог МожноХодить(цел Позиция, цел Направление) нач ЧислоПроверок := ЧислоПроверок + 1 знач := (ИгровоеПоле[Позиция] = Колышек) и (ИгровоеПоле[Позиция + Направление] = Колышек) и (ИгровоеПоле[Позиция + 2 * Направление] = Пусто) кон алг СделатьХод(цел Позиция, цел Направление) нач ИгровоеПоле[Позиция] := Пусто ИгровоеПоле[Позиция + Направление] := Пусто ИгровоеПоле[Позиция + 2 * Направление] := Колышек кон алг ОтменитьХод(цел Позиция, цел Направление) нач ИгровоеПоле[Позиция] := Колышек ИгровоеПоле[Позиция + Направление] := Колышек ИгровоеПоле[Позиция + 2 * Направление] := Пусто кон алг лог Решить нач цел Позиция цел НомерНаправления цел Направление лог ЕстьРешение цел КолышковНаПоле КолышковНаПоле := 0 ЕстьРешение := нет Позиция := 1 нц пока (не ЕстьРешение) и (Позиция <= длин(ИгровоеПоле)) если ИгровоеПоле[Позиция] = Колышек то КолышковНаПоле := КолышковНаПоле + 1 НомерНаправления := 1 нц пока (не ЕстьРешение) и (НомерНаправления <= 4) Направление := Направления[НомерНаправления] если МожноХодить(Позиция, Направление) то СделатьХод(Позиция, Направление) ЕстьРешение := Решить ОтменитьХод(Позиция, Направление) все НомерНаправления := НомерНаправления + 1 кц все Позиция := Позиция + 1 кц если ЕстьРешение или (КолышковНаПоле = 1) то вывод ИгровоеПоле, нс знач := да иначе знач := нет все кон -----------------------------------------------------------------------------------------