Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt beschreven hoe u een Azure PostgreSQL-Flexible-server herstelt als back-up van Files met behulp van Azure Portal.
Vereisten
Voordat u back-ups van Azure Database for PostgreSQL Flexible Server herstelt, moet u de volgende vereisten controleren:
Zorg ervoor dat u over de vereiste machtigingen voor de herstelbewerking beschikt.
Back-upgegevens worden opgeslagen in de Backup-kluis als blob in de Microsoft-tenant. Tijdens een herstelbewerking worden de back-upgegevens gekopieerd van het ene opslagaccount naar het andere tussen tenants. Zorg ervoor dat voor het doelopslagaccount voor het herstellen de eigenschap AllowCrossTenantReplication is ingesteld op true.
Zorg ervoor dat het doelopslagaccount voor het herstellen van back-ups als een bestand toegankelijk is via een openbaar netwerk. Als het opslagaccount een privé-eindpunt gebruikt, werkt u de instellingen voor openbare netwerktoegang bij voordat u een herstelbewerking uitvoert.
Azure PostgreSQL - Flexibele Server-back-ups als bestanden herstellen
Opmerking
Herstelbewerking is een proces in twee stappen:
- Herstel de back-up van de Backup-kluis naar een opslagcontainer.
- Herstel de back-upbestanden van de opslagcontainer naar een nieuwe of bestaande flexibele server.
Voer de volgende stappen uit om de Azure PostgreSQL-Flexible-database te herstellen:
Ga naar Backup Vault>Backup Instances. Selecteer de PostgreSQL - Flexibele server die moet worden hersteld en selecteer Herstellen.
U kunt ook naar het back-upcentrum gaan en Herstellen selecteren.
Selecteer het tijdstip dat u wilt herstellen met behulp van Herstelpunt selecteren. Wijzig het datumbereik door Tijdsperiode te selecteren.
Kies het doelopslagaccount en de container op het tabblad Parameters herstellen. Selecteer Valideren om de machtigingen voor herstelparameters te controleren vóór de definitieve beoordeling en herstel.
Zodra de validatie is geslaagd, selecteert u Controleren en herstellen.
Nadat u de parameters hebt gecontroleerd, selecteert u Herstellen om de geselecteerde PostgreSQL - Flexibele serverback-up te herstellen in het doelopslagaccount.
Verzend de herstelbewerking en volg de geactiveerde taak onder Back-uptaken.
Nadat de hersteltaak is voltooid, gaat u naar de container van het opslagaccount om de herstelde databases weer te geven als bestanden (.sql bestanden) van uw PostgreSQL - Flexibele server. Azure Backup genereert ook de volgende back-upbestanden:
Database.sql fileper database: bevat gegevens en schemagegevens voor een bepaalde database.Roles.sql filesvoor het hele exemplaar: bevat alle functiegegevens die op serverniveau bestaan.Tablespace.sql file: Tablespace-bestand.Schema.sql file: Bevat schema-informatie voor alle databases op de server.Opmerking
U wordt aangeraden dit script niet uit te voeren op de PostgreSQL - Flexibele server omdat het schema al deel uitmaakt van het
database.sqlscript.
De back-upbestanden van de opslagcontainer herstellen naar een nieuwe of bestaande PostgreSQL - Flexibele server
Voer de volgende stappen uit om de back-upbestanden van de opslagcontainer te herstellen naar een nieuwe of bestaande PostgreSQL - Flexibele server:
Zorg ervoor dat alle vereiste extensies zijn ingeschakeld op de nieuwe flexibele doelserver.
Koppel de serverparameterwaarden van de PostgreSQL-brondatabase aan de Azure Database for PostgreSQL door toegang te krijgen tot de sectie Serverparameters in Azure Portal en de waarden dienovereenkomstig handmatig bij te werken. Sla de parameterwijzigingen op en start de Azure Database for PostgreSQL - Flexible-server opnieuw om de nieuwe configuratie toe te passen.
Als Microsoft Entra-verificatie is vereist op de nieuwe server, schakelt u deze in en maakt u de relevante Microsoft Entra-beheerders.
Maak een nieuwe database voor herstel.
Opmerking
Voordat de database wordt hersteld, moet u een nieuwe, lege database maken. Zorg ervoor dat uw gebruikersaccount de
CREATEDBmachtiging heeft.Gebruik de opdracht
CREATE DATABASE Database_nameom de database te maken.Herstel de database met behulp van
database.sql fileals de doelbeheerder.Nadat de doeldatabase is gemaakt, downloadt u het dumpbestand van een Azure Storage-account door de volgende opdracht uit te voeren:
az storage blob download --container-name <container-name> --name <blob-name> --account-name <storage-account-name> --account-key <storage-account-key> --file <file-name>Herstel vervolgens de gegevens in deze database vanuit het dumpbestand door de volgende opdracht uit te voeren:
pg_restore -h <postgres-server-url> -p <port> -U <username> -d <database-name> --no-owner -v <File Name>-
--account-name: Naam van het doelopslagaccount. -
--container-name: Naam van de blobcontainer. -
--blob-name: Naam van de blob. -
--account-key: Opslagaccount sleutel. -
-Fd: De mapindeling. -
-j: Het aantal taken. -
-C: Begin de uitvoer met een opdracht om de database zelf te maken en maak vervolgens opnieuw verbinding met de database.
Opmerking
Als de opdracht niet wordt uitgevoerd zoals verwacht, geeft u het volledige bestandspad op in plaats van alleen de bestandsnaam te gebruiken.
U kunt ook het back-upbestand downloaden en de herstelbewerking rechtstreeks uitvoeren.
-
Herstel alleen de vereiste rollen en bevoegdheden en negeer de veelvoorkomende fouten. Sla deze stap over als u de herstelbewerking uitvoert voor nalevingsvereisten en het ophalen van gegevens als lokale beheerder.
Rollen en gebruikers herstellen voor de herstelde databases
Gekluisde back-ups worden voornamelijk hersteld voor nalevingsbehoeften, zoals testen en controles. U kunt zich aanmelden als lokale beheerder en herstellen met behulp van het database.sql bestand. Er zijn geen andere rollen nodig voor het ophalen van gegevens.
Voor andere toepassingen, zoals onbedoelde verwijderingsbeveiliging of herstel na noodgevallen, moet u ervoor zorgen dat de benodigde rollen worden gemaakt volgens de behoeften van uw organisatie. Vermijd duplicaties tussen roles.sql en database.sql.
- Dezelfde flexibele server herstellen: functieherstel is mogelijk niet nodig.
-
Herstellen naar een andere flexibele server: gebruik het
roles.sqlbestand om de vereiste rollen opnieuw te maken.
Wanneer u herstelt van roles.sql, kunnen sommige rollen of kenmerken mogelijk niet geldig zijn voor de nieuwe doelserver.
Voor omgevingen met supergebruikerstoegang (on-premises of VM's) kunt u alle opdrachten naadloos uitvoeren.
Belangrijke overwegingen voor het scenario met flexibele servers
Dit zijn de belangrijkste overwegingen:
-
Verwijder Superuser-Only kenmerken: Op flexibele server zijn er geen supergebruikersbevoegdheden. Verwijder kenmerken zoals
NOSUPERUSERenNOBYPASSRLSuit het rollenoverzicht. -
Sluit Service-Specific gebruikers uit: gebruikers uitsluiten die specifiek zijn voor flexibele serverservices (
azure_su,azure_pg_adminreplication,localadmin, ).Entra AdminDeze specifieke servicerollen worden automatisch opnieuw gemaakt wanneer beheerders worden toegevoegd aan de nieuwe flexibele server.
Voordat u de databaseobjecten herstelt, moet u ervoor zorgen dat u de rollen correct dumpt en opschoont. Als u deze actie wilt uitvoeren, downloadt u het roles.sqlscript uit uw opslagcontainer en maakt u alle vereiste aanmeldingen.
- Niet-Entra-rollen maken: gebruik een lokaal beheerdersaccount om de scripts voor het maken van rollen uit te voeren.
- Microsoft Entra-rollen maken: als u rollen moet maken voor Microsoft Entra-gebruikers, gebruikt u een Microsoft Entra-beheerdersaccount om de benodigde scripts uit te voeren.
U kunt het rollenscript downloaden uit uw opslagaccount, zoals wordt weergegeven in de volgende schermopname:
Wanneer u het uitvoerbestand migreert, roles.sql kan dit bepaalde rollen en kenmerken bevatten die niet van toepassing zijn in de nieuwe omgeving. U moet rekening houden met het volgende:
- Kenmerken verwijderen die alleen door supergebruikers kunnen worden ingesteld: als u migreert naar een omgeving waar u geen supergebruikersbevoegdheden hebt, verwijdert u kenmerken zoals NOSUPERUSER en NOBYPASSRLS uit de rollendump.
-
Servicespecifieke gebruikers uitsluiten: Servicegebruikers met één server uitsluiten, zoals
azure_superuserofazure_pg_admin. Deze zijn specifiek voor de service en worden automatisch gemaakt in de nieuwe omgeving.
Gebruik de volgende sed-opdracht om uw rollendump op te schonen:
sed -i '/azure_superuser/d; /azure_pg_admin/d; /azuresu/d; /^CREATE ROLE replication/d; /^ALTER ROLE replication/d; /^ALTER ROLE/ {s/NOSUPERUSER//; s/NOBYPASSRLS//;}' roles.sql
Met deze opdracht worden de regels verwijderd die de elementen azure_superuser, azure_pg_admin, azuresu bevatten, evenals regels die beginnen met CREATE ROLE replicatie en ALTER ROLE replicatie, en worden de NOSUPERUSER en NOBYPASSRLS attributen uit ALTER ROLE instructies verwijderd.
Volgende stappen
Back-up van Azure PostgreSQL - Flexible Server beheren met behulp van Azure Portal.