Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Toto téma popisuje, jak pomocí rutin PowerShellu vytvořit a nakonfigurovat skupinu dostupnosti AlwaysOn pomocí PowerShellu na SQL Serveru. Skupina dostupnosti definuje sadu uživatelských databází, které budou převzít služby při selhání jako jedna jednotka, a sadu partnerů pro převzetí služeb při selhání, označované jako repliky dostupnosti, které podporují převzetí služeb při selhání.
Poznámka:
Úvod do skupin dostupnosti najdete v tématu Přehled skupin dostupnosti AlwaysOn (SQL Server).
Poznámka:
Jako alternativu k používání rutin PowerShellu můžete použít průvodce vytvořením "skupiny dostupnosti" nebo Transact-SQL. Další informace najdete v tématu Použití dialogového okna Nová skupina dostupnosti (SQL Server Management Studio) nebo Vytvoření skupiny dostupnosti (Transact-SQL).
Než začnete
Požadavky, omezení a doporučení
- Před vytvořením skupiny dostupnosti ověřte, že instance hostitelů SQL Serveru se nacházejí na různých uzlech jednoho clusteru s podporou převzetí služeb při selhání (WSFC) systému Windows Server. Ověřte také, že vaše instance serveru splňují ostatní požadavky na instanci serveru a že jsou splněny všechny ostatní požadavky na skupiny dostupnosti AlwaysOn a že znáte doporučení. Pro další informace důrazně doporučujeme, abyste si přečetli požadavky, omezení a doporučení pro skupiny dostupnosti Always On (SQL Server).
Povolení
Vyžaduje členství v pevné roli serveru sysadmin a oprávnění k vytvoření SKUPINY DOSTUPNOSTI, ALTER ANY AVAILABILITY GROUP nebo CONTROL SERVER.
Vytvoření a konfigurace skupiny dostupnosti pomocí PowerShellu
Následující tabulka uvádí základní úlohy, které jsou součástí konfigurace skupiny dostupnosti, a uvádí ty, které jsou podporovány rutinami PowerShellu. Úlohy skupin dostupnosti AlwaysOn musí být provedeny v pořadí, ve kterém jsou uvedeny v tabulce.
| Task | Cmdlety PowerShellu (pokud jsou k dispozici) nebo příkaz Transact-SQL | Kde provést úlohu |
|---|---|---|
| Vytvoření koncového bodu zrcadlení databáze (jednou na instanci SQL Serveru) | New-SqlHadrEndPoint | Proveďte na každé instanci serveru, která nemá koncový bod pro zrcadlení databáze. Pokud chcete změnit existující koncový bod zrcadlení databáze, použijte Set-SqlHadrEndpoint. |
| Vytvoření skupiny dostupnosti | Nejprve pomocí rutiny New-SqlAvailabilityReplica s parametrem -AsTemplate vytvořte objekt repliky dostupnosti v paměti pro každou ze dvou replik dostupnosti, které chcete zahrnout do skupiny dostupnosti. Pak vytvořte skupinu dostupnosti pomocí rutiny New-SqlAvailabilityGroup a odkazováním na objekty repliky dostupnosti. |
Spusťte na instanci serveru, která je hostitelem počáteční primární repliky. |
| Připojte sekundární repliku do skupiny dostupnosti | Join-SqlAvailabilityGroup | Spustí se na každé instanci serveru, která je hostitelem sekundární repliky. |
| Příprava sekundární databáze | Backup-SqlDatabase a Restore-SqlDatabase | Vytvořte zálohy v instanci serveru, která je hostitelem primární repliky. Obnovte zálohy na každé instanci serveru, která je hostitelem sekundární repliky, pomocí parametru obnovení NoRecovery . Pokud se cesty k souborům liší mezi počítači, které hostují primární repliku, a cílovou sekundární replikou, použijte také parametr Restore PřemístitFile . |
| Spuštění synchronizace dat připojením každé sekundární databáze ke skupině dostupnosti | Add-SqlAvailabilityDatabase | Spusťte na každé instanci serveru, která je hostitelem sekundární repliky. |
Poznámka:
Chcete-li provést dané úlohy, změňte adresář (cd) na uvedenou instanci serveru nebo instance.
Použití PowerShellu
Nastavte a použijte poskytovatele PowerShellu SQL Serveru.
Poznámka:
Pokud chcete zobrazit syntaxi a příklad dané rutiny, použijte rutinu Get-Help v prostředí SQL Server PowerShell. Další informace najdete v tématu Získání nápovědy k SQL Serveru PowerShellu.
Změňte adresář (cd) na instanci serveru, která je hostitelem primární repliky.
Vytvořte objekt repliky dostupnosti v paměti pro primární repliku.
Vytvořte objekt dostupnostní repliky v paměti pro každou sekundární repliku.
Vytvořte skupinu dostupnosti.
Poznámka:
Maximální délka názvu skupiny dostupnosti je 128 znaků.
Připojte novou sekundární repliku ke skupině dostupnosti, viz Připojení sekundární repliky ke skupině dostupnosti (SQL Server).
Pro každou databázi ve skupině dostupnosti vytvořte sekundární databázi obnovením nedávných záloh primární databáze pomocí FUNKCE RESTORE WITH NORECOVERY.
Připojte každou novou sekundární databázi ke skupině dostupnosti, viz Připojení sekundární repliky ke skupině dostupnosti (SQL Server).
(volitelné) Pomocí příkazu Windows dir ověřte obsah nové skupiny dostupnosti.
Poznámka:
Pokud účty služeb SQL Serveru instancí serveru fungují pod různými uživatelskými účty domény, vytvořte na každé instanci serveru přihlášení pro druhou instanci serveru a udělte tomuto přihlášení oprávnění CONNECT k místnímu koncovému bodu zrcadlení databáze.
Example
Následující příklad PowerShellu vytvoří a nakonfiguruje jednoduchou skupinu dostupnosti s názvem <myAvailabilityGroup> se dvěma replikami dostupnosti a jednou databází dostupnosti. Příklad:
Zálohuje
<myDatabase>a jeho transakční protokol.Obnoví
<myDatabase>a jeho transakční protokol pomocí parametru -NoRecovery.Vytvoří reprezentaci primární repliky v paměti, která bude hostována místní instancí SYSTÉMU SQL Server (pojmenovaný
PrimaryComputer\Instance).Vytvoří reprezentaci sekundární repliky v paměti, která bude hostována instancí SYSTÉMU SQL Server (pojmenovaný
SecondaryComputer\Instance).Vytvoří skupinu dostupnosti s názvem
<myAvailabilityGroup>.Připojuje sekundární repliku ke skupině dostupnosti.
Připojí sekundární databázi ke skupině dostupnosti.
# Backup my database and its log on the primary
Backup-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.bak" `
-ServerInstance "PrimaryComputer\Instance"
Backup-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.log" `
-ServerInstance "PrimaryComputer\Instance" `
-BackupAction Log
# Restore the database and log on the secondary (using NO RECOVERY)
Restore-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.bak" `
-ServerInstance "SecondaryComputer\Instance" `
-NoRecovery
Restore-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.log" `
-ServerInstance "SecondaryComputer\Instance" `
-RestoreAction Log `
-NoRecovery
# Create an in-memory representation of the primary replica.
$primaryReplica = New-SqlAvailabilityReplica `
-Name "PrimaryComputer\Instance" `
-EndpointURL "TCP://PrimaryComputer.domain.com:5022" `
-AvailabilityMode "SynchronousCommit" `
-FailoverMode "Automatic" `
-Version 12 `
-AsTemplate
# Create an in-memory representation of the secondary replica.
$secondaryReplica = New-SqlAvailabilityReplica `
-Name "SecondaryComputer\Instance" `
-EndpointURL "TCP://SecondaryComputer.domain.com:5022" `
-AvailabilityMode "SynchronousCommit" `
-FailoverMode "Automatic" `
-Version 12 `
-AsTemplate
# Create the availability group
New-SqlAvailabilityGroup `
-Name "<myAvailabilityGroup>" `
-Path "SQLSERVER:\SQL\PrimaryComputer\Instance" `
-AvailabilityReplica @($primaryReplica,$secondaryReplica) `
-Database "<myDatabase>"
# Join the secondary replica to the availability group.
Join-SqlAvailabilityGroup -Path "SQLSERVER:\SQL\SecondaryComputer\Instance" -Name "<myAvailabilityGroup>"
# Join the secondary database to the availability group.
Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryComputer\Instance\AvailabilityGroups\<myAvailabilityGroup>" -Database "<myDatabase>"
Související úkoly
Konfigurace instance serveru pro skupiny dostupnosti AlwaysOn
Povolení a zakázání skupin dostupnosti AlwaysOn (SQL Server)
Vytvoření koncového bodu zrcadlení databáze pro skupiny dostupnosti AlwaysOn (SQL Server PowerShell)
Konfigurace vlastností skupiny dostupnosti a repliky
Změna režimu převzetí služeb při selhání repliky dostupnosti (SQL Server)
Vytvoření nebo konfigurace naslouchacího procesu skupiny dostupnosti (SQL Server)
Zadání adresy URL koncového bodu při přidávání nebo úpravě repliky dostupnosti (SQL Server)
Konfigurace přístupu jen pro čtení v replice dostupnosti (SQL Server)
Konfigurace směrování pouze pro čtení pro Skupinu dostupnosti (SQL Server)
Změňte období časového limitu relace pro repliku dostupnosti (SQL Server)
Dokončení konfigurace skupiny dostupnosti
Připojení sekundární repliky ke skupině dostupnosti (SQL Server)
Ruční příprava sekundární databáze pro skupinu dostupnosti (SQL Server)
Připojení sekundární databáze ke skupině dostupnosti (SQL Server)
Vytvoření nebo konfigurace naslouchacího procesu skupiny dostupnosti (SQL Server)
Alternativní způsoby vytvoření skupiny dostupnosti
Použití Průvodce skupin dostupnosti (SQL Server Management Studio)
Použití dialogového okna Nová skupina dostupnosti (SQL Server Management Studio)
Řešení potíží s konfigurací skupin dostupnosti AlwaysOn
řešení potíží s konfigurací skupin dostupnosti AlwaysOn (SQL Server)
Řešení potíží s neúspěšnou operací Add-File (skupiny dostupnosti AlwaysOn)
Související obsah
Blogy:
HADRON Always On - Vzdělávací série: Využití pracovního fondu pro HADRON optimalizované databáze
Konfigurace Always On pomocí SQL Server PowerShell
Blogy týmu SQL Server Always On: Oficiální blog týmu Always On pro SQL Server
Blogy o
techniků SQL Serveru CSS Whitepapers:
Viz také
Koncový bod zrcadlení databáze (SQL Server)
přehled skupin dostupnosti AlwaysOn (SQL Server)